最近在使用接口時候,我使用get請求時,需要攜帶登錄態,所以在get請求的時候我需要在head里面把cookie給加上,添加方式get和post完全不一樣
Post方式添加cookie
httpPost = new HttpPost(url);
//添加代理配置 // 設置代理
RequestConfig config = RequestConfig.custom().setProxy(proxy).build();
//設置參數
List<NameValuePair> list = new ArrayList<NameValuePair>();
Iterator iterator = map.entrySet().iterator();
while(iterator.hasNext()){
Entry<String,String> elem = (Entry<String, String>) iterator.next();
list.add(new BasicNameValuePair(elem.getKey(),elem.getValue()));
System.out.println("請求的參數為:"+elem.getKey()+":"+elem.getValue());
}
if(list.size() > 0){
UrlEncodedFormEntity entity = new UrlEncodedFormEntity(list,"utf-8");
httpPost.setEntity(entity);
}
//設置頭部信息
httpPost.setHeader("Referer","http://oms.hqygou.com/order/temp/new");
httpPost.setHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
httpPost.setHeader("X-Requested-With","XMLHttpRequest");
httpPost.setHeader("Cookies",cookies);
get請求設置頭部信息
HttpGet httpGet = new HttpGet(url);
httpGet.setHeader("Connection","keep-alive");
httpGet.addHeader(new BasicHeader("Cookie", cookies));
注意了使用:setHeader如果有這個cookie就會在后面直接添加這個cookie
addHeader沒有這個cookie就新增這個cookie
