免责声明:我是 Java、Spring 和 Spring Boot 的新手。
我想让 Spring Boot 在尝试 POST 到不存在的 URL 时返回 404。但是,现在它返回 405,带有仅包含 GET 和 HEAD 的 Allow header 。有没有办法自定义允许哪些 HTTP 方法以便我得到 404?我试过实现自定义 ErrorController,但这似乎不起作用。
要清楚:这是当我发布到不应与我定义的端点任何匹配的 URL 时,例如 http://example.com/some-bogus-thing
如果需要更多信息来诊断此问题,我很乐意提供。鉴于我对该平台不熟悉,我不确定什么是相关的。
最佳答案
HTTP 405 (Method not found)
返回,when URL exists
并且您尝试使用该特定 URL 映射不允许的 HTTP 方法。
如果您在 .../test
以下调用 POST然后它将返回 HTTP 405,反之亦然。
@RequestMapping(value = "/test", method = RequestMethod.GET)
如果任何 HTTP 方法都没有 URL 映射,那么它将返回 HTTP 404。
要了解该特定启动实例上的所有当前映射,只需转到浏览器
http://localhost:8080/mappings
关于java - Spring Boot 为 POST 到未知 URL 返回 405 而不是 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30103157/