HttpClient(4.3.5) - HTTP Header
2024-08-25 18:24:22
An HTTP message can contain a number of headers describing properties of the message such as the content length, content type and so on. HttpClient provides methods to retrieve, add, remove and enumerate headers.
HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, HttpStatus.SC_OK, "OK");
response.addHeader("Set-Cookie", "c1=a; path=/; domain=localhost");
response.addHeader("Set-Cookie", "c2=b; path=\"/\", c3=c; domain=\"localhost\"");
Header h1 = response.getFirstHeader("Set-Cookie");
System.out.println(h1);
Header h2 = response.getLastHeader("Set-Cookie");
System.out.println(h2);
Header[] hs = response.getHeaders("Set-Cookie");
System.out.println(hs.length);
stdout >
Set-Cookie: c1=a; path=/; domain=localhost
Set-Cookie: c2=b; path="/", c3=c; domain="localhost"
2
The most efficient way to obtain all headers of a given type is by using the HeaderIterator
interface.
HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, HttpStatus.SC_OK, "OK");
response.addHeader("Set-Cookie", "c1=a; path=/; domain=localhost");
response.addHeader("Set-Cookie", "c2=b; path=\"/\", c3=c; domain=\"localhost\""); HeaderIterator it = response.headerIterator("Set-Cookie");
while (it.hasNext()) {
System.out.println(it.next());
}
stdout >
Set-Cookie: c1=a; path=/; domain=localhost
Set-Cookie: c2=b; path="/", c3=c; domain="localhost"
It also provides convenience methods to parse HTTP messages into individual header elements.
HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, HttpStatus.SC_OK, "OK");
response.addHeader("Set-Cookie", "c1=a; path=/; domain=localhost");
response.addHeader("Set-Cookie", "c2=b; path=\"/\", c3=c; domain=\"localhost\""); HeaderElementIterator it = new BasicHeaderElementIterator(response.headerIterator("Set-Cookie"));
while (it.hasNext()) {
HeaderElement elem = it.nextElement();
System.out.println(elem.getName() + " = " + elem.getValue());
NameValuePair[] params = elem.getParameters();
for (int i = 0; i < params.length; i++) {
System.out.println(" " + params[i]);
}
}
stdout >
c1 = a
path=/
domain=localhost
c2 = b
path=/
c3 = c
domain=localhost
最新文章
- 拯救你的文档 – 【DevOps敏捷开发动手实验】开源文档发布
- php $CI =&; get_instance();
- ---iproute2 策略路由
- zoj 3742 Delivery 好题
- display:block; 块级元素。<;a>;,<;span>;标签设置宽度和高度
- JFrome 登陆/注册/回显/输出流小程序之二
- xml中不能直接添加ViewGroup
- SQL Server 2008 查询所有用户表
- 【javascript】浅谈javaScript的深拷贝
- redux简明学习
- SIFT解析(二)特征点位置确定
- FusionCharts多数据验证饼图label是否重叠
- Python练手例子(12)
- vscode设置
- nodejs模块循环引用讲解
- 2018-2019-2 网络对抗技术 20165230 Exp5 MSF基础应用
- select标签(下拉菜单和列表)
- Python小白学习之路(二十五)—【装饰器的应用】
- 兵器簿之github的配置和使用
- php CI 实战教程第一季百度经验杂志