htmlunit Socks 代理无法使用 HTTPS
Posted
技术标签:
【中文标题】htmlunit Socks 代理无法使用 HTTPS【英文标题】:htmlunit Socks Proxy not working with HTTPS 【发布时间】:2012-10-31 19:43:16 【问题描述】:我遇到了与 Is it possible to use HTTPS proxy in htmlunit? 类似的问题,但我使用的是 httpunit 2.10 版。上一篇文章是在 2.10 发布的时候(changelog,所以我不知道从那时起是否有任何变化。
具体来说,这段代码:
WebClient webClient = new WebClient(BrowserVersion.FIREFOX_3_6);
ProxyConfig proxyConfig = new ProxyConfig("localhost",8080);
proxyConfig.setSocksProxy(true);
webClient.setProxyConfig(proxy);
webClient.addRequestHeader("referer", "http://www.google.com");
webClient.setThrowExceptionOnScriptError(false);
webClient.setCssEnabled(false);
webClient.setjavascriptEnabled(false);
HtmlPage page = webClient.getPage("https://somewebsite");
如果我没有在 8080 上运行代理,这应该不工作,但它确实连接,只是不通过代理。相反,当代理未运行时,它会崩溃:
HtmlPage page = webClient.getPage("http://somewebsite"); //not https
这还是htmlunit的不足吗?是否有一个好的解决方法或技巧可以让 socks 代理与 https 一起使用?
【问题讨论】:
【参考方案1】:这是 2.10 版中存在的错误,现已在 2.11 版中修复
【讨论】:
我没有机会使用代理测试 https,但我什至无法让常规 https 登录与 2.11 一起使用。我会尝试看看这是否是我所做的事情的独特之处。以上是关于htmlunit Socks 代理无法使用 HTTPS的主要内容,如果未能解决你的问题,请参考以下文章