Cookie的两种获取方式:
方法一:
<span style="white-space:pre"> </span>List<Cookie> cookies = ((AbstractHttpClient) mHttpClient).getCookieStore().getCookies();
if(cookies != null){
String tmpcookies = "";
for (Cookie ck : cookies) {
// tmpcookies += ck.toString()+";";
tmpcookies += ck.getName()+"="+ck.getValue()+";"+"domain="+ck.getDomain()+";"+"path="+ck.getPath();
}
方法二:(注意这种方法获取的Cookie不包含Domain)
<span style="white-space:pre"> </span>HttpResponse httpResponse = mHttpClient.execute(httpPost);
response = EntityUtils.toString(httpResponse.getEntity());
if(httpResponse.getFirstHeader("Set-Cookie")!=null)
{
org.apache.http.Header[] Cookies=httpResponse.getHeaders("Set-Cookie");
StringBuffer stringCookie = new StringBuffer();
for (int j = 0; j < Cookies.length; j++) {
stringCookie.append(Cookies[j].getValue()).append(";");
}
stringCookie.append("domain=192.168.0.184;");
}
管理Cookie的方法:
<span style="white-space:pre"> </span>CookieSyncManager.createInstance(this);
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.setAcceptCookie(true);
// cookieManager.removeSessionCookie();
cookieManager.setCookie(url, cookieString);
CookieSyncManager.getInstance().sync();
CookieSyncManager.createInstance(this);
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.removeAllCookie();
CookieSyncManager.getInstance().sync();