问题陈述 - Spring-Boot(2.0.1.RELEASE 和嵌入式 Tomcat 服务器)中的一个简单的 RESTful 服务返回如下响应:
HTTP/1.1 200
Content-Type: application/json;charset=UTF-8
Transfer-Encoding: chunked
Date: Tue, 01 May 2018 00:33:04 GMT
7d
{the-json-response-anticipated}
0
经过一番查找,发现是由于header导致的Transfer-Encoding: chunked
。尝试设置以下内容application.properties
spring.http.encoding.force=false
spring.http.encoding.enabled=false
但是,没有用。有什么方法可以禁用相同的功能吗?
我应该编写显式代码来形成参数设置为的标头false
并将其设置为响应的标头?
这可以通过显式添加来实现HttpHeaders.CONTENT_LENGTH
标题如下:
一个例子:
@RequestMapping(value = "/contacts", method = RequestMethod.POST)
public Map<String, ContactInfo> addContactInfo(
@RequestBody Map<String, ContactInfo> ContactInfoDto,
@RequestHeader(value = HttpHeaders.CONTENT_LENGTH, required = true) Long contentLength)
{
...
}
您可能想通过this https://stackoverflow.com/questions/35200216/remove-transfer-encodingchunked-in-the-post-request回答 SO 以获取更多详细信息。
希望这可以帮助!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)