[英]URLConnection with Cookies?
我正在嘗試制作一個支持cookie的URLConnection。 根據文檔,我可以使用:
CookieManager cookieManager = new CookieManager();
CookieHandler.setDefault(cookieManager);
我無法使此代碼正常工作,然后我看到這僅適用於API 9(2.3)。 但是,在較舊的模擬器中使用CookieManager時不會出現錯誤,CookieManager存在,但無法構造。 有什么方法可以使此版本適用於早期版本? 我試過了:
cookieManager.setAcceptCookie(true);
URLConnection con = u.openConnection();
con.setRequestProperty("Cookie", cookieManager.getInstance().getCookie(url););
con.setDoOutput(true);
con.connect();
String addCookie = con.getHeaderField("Set-Cookie");
System.out.println(con.getHeaderFields().toString());
if (addCookie!=null) {
cookieManager.getInstance().setCookie(url, addCookie);
}
但這不起作用。
我能夠使用Ian Brown的CookieManager類啟用Cookie: http ://www.hccp.org/java-net-cookie-how-to.html
我將其重命名為IansCookieManager,設置了一個類變量_CM = new IansCookieManager,現在很簡單:
URLConnection conn = u.openConnection();
_CM.setCookies(conn);
conn.connect();
_CM.storeCookies(conn);
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.