WebClient wc = new WebClient();
wc.getCookieManager().addCookie(cookie);
第二行代码的cookie怎么设置,能和org.apache.commons.httpclient.Cookie互相转换吗
谢谢你的宝贵建议
WebClient wc = new WebClient(); wc.getCookieManager().addCookie(cookie);
这里的cookie是这个类的com.gargoylesoftware.htmlunit.util.Cookie
但是new Cookie()的时候有三个参数,搞懵了。其实我的意思是 把 org.apache.commons.httpclient.Cookie的 Cookie转换成htmlunit的cookie
第1个回答 2014-02-18
cookie 是当前网站本地的 和类没关系 你自己写的可以读取 别人写的第三方组件也可以读取的 知道名字就行
第2个回答 2014-03-05
public static String getCookieHeader(WebClient client) {
if (client == null
|| client.getCookieManager() == null
|| CollectionUtils.isEmpty(client.getCookieManager()
.getCookies())) {
return "";
}
StringBuilder cookieBuilder = new StringBuilder();
for (Cookie cookie : client.getCookieManager().getCookies()) {
cookieBuilder.append(cookie.getName());
cookieBuilder.append("=");
cookieBuilder.append(cookie.getValue());
cookieBuilder.append("; ");
}
String cookies = cookieBuilder.substring(0, cookieBuilder.length() - 2);
return cookies;
}
然后再赋给httpclient即可
if (client == null
|| client.getCookieManager() == null
|| CollectionUtils.isEmpty(client.getCookieManager()
.getCookies())) {
return "";
}
StringBuilder cookieBuilder = new StringBuilder();
for (Cookie cookie : client.getCookieManager().getCookies()) {
cookieBuilder.append(cookie.getName());
cookieBuilder.append("=");
cookieBuilder.append(cookie.getValue());
cookieBuilder.append("; ");
}
String cookies = cookieBuilder.substring(0, cookieBuilder.length() - 2);
return cookies;
}
然后再赋给httpclient即可