我试图模拟一个使用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