为了账号安全,请及时绑定邮箱和手机立即绑定

Tomcat 拒绝所有 POST 请求

Tomcat 拒绝所有 POST 请求

子衿沉夜 2023-03-17 16:40:46
我在 Spring 中创建了 REST API,它返回正文请求中作为 JSON 传递的值以及一些附加数据。使用spring-boot一切正常运行应用程序时。每次我提出请求时,我都会收到期望值。我的目标是将此应用程序部署在Tomcat端口上8080。部署应用程序后,Tomcat所有POST请求都被拒绝,我收到以下错误:{    "timestamp": "2019-07-11T12:33:41.877+0000",    "status": 405,    "error": "Method Not Allowed",    "message": "Request method 'GET' not supported",    "path": "/test/"}问题是我正在POST使用POSTMAN. 这是请求正文的样子:{    "username":"somebody"}我的API代码:@RestControllerpublic class Test{    @RequestMapping(value = "/", method = RequestMethod.POST)    String token(@RequestBody RequestBodyData requestBody) {    return "hello" + requestBody.getUsername();    }}为什么我会收到此错误?我应该更改 Tomcat 配置还是我的代码有问题?编辑 1 我还在WildFly服务器上部署了这个应用程序,一切都按我预期的那样工作。我正确使用 Postman,问题是 Tomcat 或项目配置。
查看完整描述

2 回答

?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

您需要将请求从GET更改为POST。您从请求中返回的错误消息证明了这一点:


"error": "Method Not Allowed",

"message": "Request method 'GET' not supported",

阅读错误(通常)可以解释错误。


查看完整回答
反对 回复 2023-03-17
?
呼如林

TA贡献1798条经验 获得超3个赞

将端点从 更改为/和/user/call from tomcat as /test/user/

( /appNameAsPerTomcat/user/ )


@RestController

public class Test{


    @RequestMapping(value = "/user/", method = RequestMethod.POST)

    String token(@RequestBody RequestBodyData requestBody) {


    return "hello" + requestBody.getUsername();

    }


}


查看完整回答
反对 回复 2023-03-17
  • 2 回答
  • 0 关注
  • 151 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信