首页 > 后端开发 > Golang > 为什么每当我尝试使用 http.MethodDelete 时,我的 html 模板上总是出现'不允许使用方法”?

为什么每当我尝试使用 http.MethodDelete 时,我的 html 模板上总是出现'不允许使用方法”?

王林
发布: 2024-02-14 12:27:09
转载
665 人浏览过

为什么每当我尝试使用 http.MethodDelete 时,我的 html 模板上总是出现“不允许使用方法”?

php小编百草在使用http.MethodDelete时出现“不允许使用方法”的问题可能是由于服务器设置或代码逻辑问题引起的。首先,确保你的服务器已正确配置和启用了DELETE方法。其次,检查你的代码逻辑,确保在处理DELETE请求时,你的代码没有限制或拦截该方法。另外,还要检查你的表单或链接是否正确使用了DELETE方法。如果以上检查都正常,那么可能是由于其他原因导致的问题,建议检查服务器日志以查找更详细的错误信息。

问题内容

我正在使用 http.MethodDelete 尝试从我的 html 模板中删除引号。每次我按下删除按钮时,我都会收到错误消息。

我尝试在我的 html 模板“Delete”中使用它,但它仍然给我错误。

解决方法

我认为你的意思是:

router.handlerfunc(http.methoddelete, "/quote/delete", app.quotedelete)
登录后复制
<a class="delete-button" href="/quote/delete?quote_id={{ .quoteid}}">delete</a>
登录后复制

默认情况下,浏览器通过发送 get 请求来跟踪链接。它没有按照您的预期发送 delete 请求。

您可以使用 javascript 代码发送 delete 请求。

您的项目中似乎没有编写任何 javascript 代码,因此快速修复方法是修改服务器代码以处理 post 请求,并使用表单将 post 请求发送到删除资源端点:

router.handlerfunc(http.methodpost, "/quote/delete", app.quotedelete)
登录后复制
<form action="/quote/delete?quote_id={{ .QuoteID }}" method="post">
  <button type="submit">Delete</button>
</form>
登录后复制

请注意,表单不能用于发送 delete 请求。 文档中列出了 from 元素允许的方法来自 mdn 的表单元素

方法

用于提交表单的 http 方法。唯一允许的方法/值是(不区分大小写):

  • post:post 方法;表单数据作为请求正文发送。
  • get(默认):get;表单数据附加到操作 url 并带有 ?分隔器。当表单没有副作用时使用此方法。
  • dialog:当表单位于 <dialog> 内时,关闭对话框并导致在提交时触发提交事件,而不提交数据或清除表单。

关于 http 请求方法的定义,请参见 http 请求方法.

以上是为什么每当我尝试使用 http.MethodDelete 时,我的 html 模板上总是出现'不允许使用方法”?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:stackoverflow.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板