[转载]httpclient 自己管理cookie
HttpClient入门参考:http://www.ibm.com/developerworks/cn/opensource/os-httpclient/
?
一、使httpclient不管理cookie:
????? client.getParams().setCookiePolicy(CookiePolicy.IGNORE_COOKIES);
二、在某个请求获得cookie时获取cookie:
??????????? private static List<String> cookieList=new ArrayList<String>();
??????????? if (theget.getResponseHeader("Set-Cookie") != null) {
??????????? ??? cookieList.clear();
?????????????? Header[] headers = theget.getResponseHeaders("Set-Cookie");
?????????????? for (int i = 0; i < headers.length; i++) {
??????????????? ?? Header header = headers[i];
??????????????? System.out.println(header.getName()+":"+header.getValue());
??????????????? cookieList.add(header.getValue());
????????????? ?? }
????????? }
三、再次请求时附加cookie:
??????? if(cookieList.size()>0){
?????????????? StringBuffer sb = new StringBuffer();
?????????????? for (String cookie: cookieList) {
???????????????????? int pos = cookie.indexOf(";");???
???????????????????? sb.append(cookie.substring(0, pos));
???????????????????? sb.append(";");
????????????? }
??????? theget.addRequestHeader("Cookie",sb.toString());
??????? }
ps:只是对Cookie做了简单处理,详细cookie情况可以再做分析。
?
本文出自:http://hi.baidu.com/neonway/blog/item/85ac9cfcf27f4f81b901a093.html/cmtid/fc67f8647cab5efef6365418