DevToolPal
简
4xx 客户端错误

405 Method Not Allowed

方法不允许

含义

URL 存在,但不支持所使用的 HTTP 方法。Allow 头列出了可用的方法。

常见原因

  • 向静态文件或只支持 GET 的路由发送 POST
  • 表单提交到了错误的端点
  • 路由在另一个路径上定义了该方法,例如带末尾斜杠的路径

解决方法

客户端或访问者

查看 Allow 头和 API 文档,确保方法与 URL 匹配。

网站或 API 的维护者

返回 405 时始终带上 Allow。检查路由中末尾斜杠的差异,以及静态托管是否接管了 API 路径。

响应示例

HTTP/1.1
HTTP/1.1 405 Method Not Allowed
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Allow: GET, HEAD, POST
Content-Type: application/problem+json

{
  "type": "about:blank",
  "title": "Method Not Allowed",
  "status": 405,
  "detail": "DELETE is not supported on /users."
}

规范

RFC 9110 §15.5.6

常见问题

› 405 和 404 的区别?

404:这里什么都没有。405:这里有东西,但不支持这个方法。

› 为什么在静态托管上 POST 会得到 405?

静态托管只处理 GET/HEAD;POST 需要服务端函数或外部表单服务。