HttpClient 4.1 post 继续访问 重定向,301,302 的url
在用HttpClient4.1,用get的时,如果有重定向,会自动再去访问重定向的内容。
但用post访问url就不会自动重定向的内容。
用post访问url是地,我们经常会遇到返回301,302返回代码,他们代表的是重定向。有两种方法让程序继续访问,
1利用heard取Location值重新再访问,代码如下
if(response.getStatusLine().getStatusCode()==302){ Header[] hs = response.getHeaders("Location"); if(hs.length>0){ return sendPost(client, hs[0].toString(), headers, params, encoding, cookie); } }
2HttpClient实例中增加重定向策略,代码如下
client.setRedirectHandler(new DefaultRedirectHandler() { @Override public boolean isRedirectRequested(HttpResponse response, HttpContext context) { boolean isRedirect = super.isRedirectRequested(response, context); if (!isRedirect) { int responseCode = response.getStatusLine().getStatusCode(); if (responseCode == 301 || responseCode == 302) { return true; } } return isRedirect; } });
相关推荐
服务器端攻城师 2020-05-04
咻咻ing 2020-01-11
bestallen 2019-12-07
朱培知浅ZLH 2020-11-16
Junzizhiai 2020-10-10
zhangbingb 2020-09-21
ROES 2020-08-17
ningningmingming 2020-07-28
Jiajinjin 2020-07-27
懒人的小窝 2020-07-04
wykpaopao 2020-06-28
lishaokang 2020-06-12
Greatemperor 2020-06-10
谢育政 2020-05-27
wanggongzhen 2020-05-26
ITlover00 2020-05-07
zhongcanw 2020-05-08
DAV数据库 2020-05-07
ningningmingming 2020-05-01