【问题标题】:Spring Rest Template - Response Body Is NullSpring Rest 模板 - 响应正文为空
【发布时间】:2015-04-10 15:23:24
【问题描述】:

在我的应用程序中与 REST Web 服务通信时,我使用的是 Spring Rest 模板。 在测试中代码完美运行,但在生产环境中,我的 cpde 无法正常工作,因为返回的主体为空

我尝试了以下

    Map<String, Object> params = new HashMap<String, Object>();

        RegisterUserRequestVO registerUserRequestVO = new RegisterUserRequestVO();
        registerUserRequestVO.setName(name);
ResponseEntity<String> resp  = hubsRestTemplate.postForEntity(getFullURLNoKeys(URL_POST_REGISTER_USER), registerUserRequestVO, String.class, params);
        System.out.println("resp:" + resp);
        System.out.println("resp:" + resp.getBody());
        System.out.println("resp:" + resp.getStatusCode());
        System.out.println("resp:" + resp.getHeaders());
        System.out.println("resp:" + resp.getHeaders());

我在测试中得到的响应如下

<200 OK,{"message":"Account created succesfuly"},{Server=[nginx/1.1.19], Date=[Fri, 10 Apr 2015 14:58:37 GMT], Content-Type=[application/json], Transfer-Encoding=[chunked], Connection=[keep-alive], Vary=[Accept-Encoding], X-Powered-By=[PHP/5.3.10-1ubuntu3.17]}>

在生产中,resp 是

<200 OK,{Server=[nginx/1.6.0], Date=[Fri, 10 Apr 2015 15:00:03 GMT], Content-Type=[application/json], Connection=[close], Vary=[Accept-Encoding]}>

返回的响应正文为空。我知道 nginx 版本不同,但这不在我的控制范围内

非常感谢您对此的任何帮助

干杯 达米安

【问题讨论】:

    标签: java spring nginx resttemplate


    【解决方案1】:

    在这篇文章中找到了答案 https://jira.spring.io/browse/SPR-8016

    我使用的是 Spring 版本 4.1.4.RELEASE 升级到 Spring 4.1.6.RELEASE 解决了这个问题

    干杯 达米安

    【讨论】:

    • 我受到了同样的错误的影响,我想指出这样一个事实,即标题 Connection=[close] 的响应具有空正文,而不是给那些具有 Connection=[keep-alive] 的人
    • Spring 版本 4.2.5.RELEASE 面临同样的问题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-19
    • 1970-01-01
    • 1970-01-01
    • 2016-08-20
    • 1970-01-01
    • 1970-01-01
    • 2022-01-13
    相关资源
    最近更新 更多