我試圖模擬一個使用HtmlUnit 2.15的場景,其中cookie將被保存在前一個會話中,並且應該在新會話中請求頁面時發送給服務器。 下面是該代碼...HtmlUnit CookieManager不向第一個請求發送cookie
String url = "http://localhost:55545/";
String domain = "localhost:55545";
java.util.logging.Logger.getLogger("com.gargoylesoftware.htmlunit").setLevel(Level.OFF);
WebClient webClient = new WebClient(BrowserVersion.FIREFOX_24);
CookieManager cookieManager = webClient.getCookieManager();
cookieManager.setCookiesEnabled(true);
Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR, 1);
Cookie cookie = new Cookie(domain, "cName", "cValue", "/", cal.getTime(), false);
cookieManager.addCookie(cookie);
webClient.setCookieManager(cookieManager);
HtmlPage page = null;
try {
page = webClient.getPage(url);
} catch (FailingHttpStatusCodeException e) {
System.err.print(e.toString());
return;
} catch (MalformedURLException e) {
System.err.print(e.toString());
return;
} catch (IOException e) {
System.err.print(e.toString());
return;
}
預期的行爲是我應該然而,沒有曲奇餅接收那裏的服務器接收cookie的「CNAME」。同時通過代理(fiddler)驗證請求我發現在首次請求時,web客戶端沒有發送Cookie頭文件。
有沒有人通過這個?希望在進入調試HtmlUnit庫之前提供一些建議。
其不工作 – AbnSrn 2015-11-20 15:09:25