KeozenEric

Results 3 comments of KeozenEric

您好 我在设置代理的时候,总是认证失败,都是我在同一个环境使用httpclient的代理设置是好的。跟踪调试也找不到思路啊,还请帮忙看看,不甚感激。谢谢。 其中:ChinaMoneyBundPageProcessorTest.java.txt 是我的程序。 run-log.txt 是日志信息 盼复! [ChinaMoneyBundPageProcessorTest.java.txt](https://github.com/code4craft/webmagic/files/1054146/ChinaMoneyBundPageProcessorTest.java.txt) [run-log.txt](https://github.com/code4craft/webmagic/files/1054149/run-log.txt) 很怪异,把认证的用户名和密码去掉以后就可以了,可是实际上是需要认证的。会不会是调用的系操作统保存的认证信息。 ---------------------------------------- 你好,原因是 程序里没有设置认证信息。只能自己解决了。 原因是因为公司的代理采用的是微软的域控用户来认证的。需要使用 NTCredentials ,所以 我重写了us.codecraft.webmagic.downloader.HttpUriRequestConverter类里面的convertHttpClientContext方法来处理的。问题解决了。

我在公司使用的是微软的域控认证的方式(即: DOAMIN/USERNAME + 用户密码的方式),这类认证通过BASIC 方式是没有作用的。需要使用 NTCredentials ,所以 我重写了us.codecraft.webmagic.downloader.HttpUriRequestConverter类里面的convertHttpClientContext方法来处理的。 谢谢 大家。

终于弄明白了 我之前认证问题的环境是在公司内部访问外网: 1、需要设置代理服务器 2、需要通过windows域控认证(问题解决主要在这) 我的解决方案: 1、设置代理服务器: String proxyServer = “xxx.xxx.xxx.xxx”; int proxyPort = 80; HttpHost proxy = new HttpHost(proxyServer, proxyPort); …… // HttpClientDownloader httpClientDownloader = new HttpClientDownloader(); httpClientDownloader.setHttpUriRequestConverter(httpUriRequestConverter); // SimpleProxyProvider...