Java NGINX将POST请求转到Spring引导应用程序中

Java NGINX将POST请求转到Spring引导应用程序中,java,spring-boot,nginx,Java,Spring Boot,Nginx,我有一个Spring引导应用程序,它将POST请求发送到端口8090中服务器上的端点。我的Java控制器是: @RequestMapping(value="/decision", method = POST) @ResponseBody public void setDecision(HttpEntity<String> httpEntity, @RequestHeader("Authorization") String auth) throws Exception { //

我有一个Spring引导应用程序,它将POST请求发送到端口8090中服务器上的端点。我的Java控制器是:

@RequestMapping(value="/decision", method = POST)
@ResponseBody
public void setDecision(HttpEntity<String> httpEntity, @RequestHeader("Authorization") String auth) throws Exception {
   // controller implementation
}
当我使用postman发送请求并打开nginx的访问日志时,我看到以下输出:

My.IP.Address -  [31/Aug/2018:08:49:59 +0200] "POST /my_endpoint HTTP/1.1" 301 185 "-" "PostmanRuntime/7.1.1"
My.IP.Address -  [31/Aug/2018:08:50:00 +0200] "GET /my_endpoint HTTP/1.1" 405 163 "http://MyServer/my_endpoint" "PostmanRuntime/7.1.1"

所以我不明白为什么当我发送POST请求时,nginx会将其作为GET请求。

HTTP用于永久URL重定向。POST请求完成后,您将被重定向到另一个页面。这就是第二个GET的来源。

谢谢!所以每次我代理一个请求时,我总是会遇到这个问题?我的意思是:我发送了一个帖子,301是因为重定向到代理8090,然后请求GET?这不是关于代理,而是关于响应。你的setDecision方法只是响应重定向。这怎么可能呢?这是一个简单的帖子。重定向应该发生在代理传递中,对吗?
My.IP.Address -  [31/Aug/2018:08:49:59 +0200] "POST /my_endpoint HTTP/1.1" 301 185 "-" "PostmanRuntime/7.1.1"
My.IP.Address -  [31/Aug/2018:08:50:00 +0200] "GET /my_endpoint HTTP/1.1" 405 163 "http://MyServer/my_endpoint" "PostmanRuntime/7.1.1"