使用Apache HttpClient版本时:
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.6</version>
</dependency>
setHeader和addHeader有什么区别?
setHeader设置响应的头信息,如果同名的头信息已存在,则会覆盖。而addHeader则是在响应中添加新的头信息,如果同名的头信息已存在,则会保留原有的头信息,并添加新的头信息。
httpPost.addHeader("AuthenticationKey",authenticationKey);
httpPost.addHeader("Content-Type","application/json");
httpPost.setHeader("Cache-Control", "no-cache"); // HTTP 1.1
httpPost.setHeader("Pragma", "no-cache"); // HTTP 1.0
httpPost.setHeader("X-Requested-With", "XMLHttpRequest"); // mimics a browser REST request
AbstractHttpMessage
文档的链接。addHeader
可能会产生重复的头,而setHeader
则总是覆盖。 - Izruoset
将替换标题,add
将添加另一个标题值。 - Krease