Java通信通过使用Apache HttpClient的Web代理失败

Java通信通过使用Apache HttpClient的Web代理失败,第1张

Java通信通过使用Apache HttpClient的Web代理失败

我会开q。如果代理服务器使用的是基本身份验证,则可以使用以下代码段作为示例:

DefaultHttpClient httpclient = new DefaultHttpClient();httpclient.getCredentialsProvider().setCredentials(    new AuthScope("PROXY HOST", 8080),    new UsernamePasswordCredentials("username", "password"));HttpHost targetHost = new HttpHost("TARGET HOST", 443, "https");HttpHost proxy = new HttpHost("PROXY HOST", 8080);httpclient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);

如果代理服务器正在使用NTLM身份验证,则我不认为NTLM支持可用于所有代理服务器版本(它将与某些NTLM身份验证代理服务器版本一起使用-
检查代理是否正在使用v1或v2的NTLM身份验证)。有关参考和解决方法,您可以检查以下内容:

http://hc.apache.org/httpcomponents-client-
ga/ntlm.html

http://htmlunit.sourceforge.net/ntlm.html

http://devsac.blogspot.com/2010/10/supoprt-for-ntlmv2-with-
apache.html

根据您的代理服务器,您可能需要查看NTCredentials而不是UserPasswordCredentials。

我还建议您不妨考虑使用Wireshark捕获网络数据包并检查代理服务器的响应,以完全确定是什么引起了该问题。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5055433.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存