gpt4 book ai didi

wordpress - HTMLUnit 和处理 cookie ("WARNING: Cookie rejected")

转载 作者:行者123 更新时间:2023-12-03 17:55:57 25 4
gpt4 key购买 nike

我正在寻找一种使用 HTMLUnit 接受 cookie(所有 cookie)的方法

我正在尝试使用 HTMLUnit 登录我的 wordpress 站点,但是当 cookie 被拒绝时,我无法提交表单(因此无法登录),因为我的错误是:

Jul 14, 2012 10:42:24 PM org.apache.http.client.protocol.ResponseProcessCookies processCookies WARNING: Cookie rejected:



代码:
package backend;

import java.io.IOException;
import java.net.MalformedURLException;
import java.util.Set;

import com.gargoylesoftware.htmlunit.BrowserVersion;
import com.gargoylesoftware.htmlunit.CookieManager;
import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.gargoylesoftware.htmlunit.util.Cookie;

public class temp {

WebClient myClient = new WebClient(BrowserVersion.FIREFOX_3);
CookieManager cm = new CookieManager();
HtmlPage page;

public void Someting() throws FailingHttpStatusCodeException, MalformedURLException, IOException{

//Disabling Javascript for now.
myClient.setJavaScriptEnabled(false);
myClient.setCssEnabled(false);
myClient.setCookieManager(cm);

page = myClient.getPage("http://nick.wordpress.com/wp-admin");

Set<Cookie> cookies = myClient.getCookieManager().getCookies();

System.out.println("Page status code: " + page.getWebResponse().getStatusCode() + "\nPage status message: " + page.getWebResponse().getStatusMessage());

if(cookies != null)
{
for(Cookie cookie : cookies)
{
this.myClient.getCookieManager().addCookie(cookie);
}
}

System.out.println("We have: " + myClient.getCookieManager().getCookies().size() + " cookie");
}

public static void main(String args[]) throws FailingHttpStatusCodeException, MalformedURLException, IOException{
temp t = new temp();
t.Someting();
}
}

此代码不包括 WordPress 表单填写/提交功能,因为这似乎无关紧要。

在网上搜索时,我只能找到 1 或 2 个模糊的答案,我应该修改 "http.client.protocol.ResponseProcessCookies"类,但我希望可以在没有这个的情况下完成。

最佳答案

您的问题得到解答 here

您必须重新创建 CookieManager 类。
找到方法 public synchronized Set<Cookie> getCookies(final URL url)并删除声明 if (spec.match(cookie, cookieOrigin)) .

关于wordpress - HTMLUnit 和处理 cookie ("WARNING: Cookie rejected"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11487599/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com