java – 407无法通过代理隧道
我们有一个调用第三方Web服务的Web服务.为了测试这个实现,我们有不同的环境.
>本地开发人员机器:当我们运行应用程序时,一切正常,我们的Web服务能够访问第三方URL. (本地机器使用Windows操作系统) 为了解决这个问题,我们尝试设置-Dhttps.proxyUser XXX -Dhttps.proxyPassword XXX,但我们继续收到错误.我们尝试的第二个选项是使用Authenticator.setDefault(new CustomImplAuthenticator()).但令人惊讶的是,JVM没有调用getPasswordAuthentication并继续抛出错误. 我们使用authenticator.setdefault代码在本地开发人员计算机上再次运行相同的应用程序.我们可以像前面所说的那样访问URL,但这次JVM没有再调用getPasswordAuthentication方法.通过网络搜索后,我们发现通过NTLM解析了身份验证数据,因此我们觉得代码正在Windows上运行. 任何人都可以让我知道什么设置,我们应该配置在Linux框中部署的应用程序,以便至少调用为Authenticator.setDefault分配的实现. 解决方法
这取决于你如何建立你的http连接.
例如,如果您使用Apache HTTPClient,则可以通过调用setProxyAuthenticationHandler将代理配置设置为DefaultHttpClient. 您执行http调用的实现需要了解代理. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |