java网络编程

302重定向

重定向的目的url写在header的Location属性。
httpclient以GET发送请求时,http的返回码是200,自动处理了重定向;
以POST发送请求时,http的返回码是302,不自动处理重定向,处于占用连接等待状态。

HttpPost  request=new HttpPost(url);
HttpResponse response=httpclient.execute(request);
//释放post请求
request.abort();
if(response.getStatusLine().getStatusCode()==302)
{
    String location=response.getLastHeader("Location").getValue();

}

java中的httpclient有两种,一个是commons-httpclient,为遗留版本不推荐使用;另一个是httpclient项目的httpcore-x.xxx.jar。

httpclient使用

HttpEntity  entity=response.getEntity();
//将字节流保存在一个byte数组中
byte[]  bytes=EntityUtils.toByteArray(entity);
//获取Content-Type编码信息
String charset=EntityUtils.getContentCharSet(entity);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章