首页 > 解决方案 > HttpClient setHeader 和 addHeader 有什么区别?

问题描述

使用 Apache HttpClient 版本时:

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.6</version>
</dependency>

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

标签: javaapache-commons-httpclient

解决方案


正如您可以从文档中看到的:

addHeader(String name, String value

向此消息添加标头。标题将附加到列表的末尾。

setHeader(String name, String value

覆盖第一个具有相同名称的标头。如果找不到具有给定名称的标题,则新标题将附加到列表的末尾。


推荐阅读