繁体   English   中英

407无法通过代理隧道

[英]407 unable to tunnel through proxy

我们有一个调用第三方Web服务的Web服务。 为了测试这个实现,我们有不同的环境。

  • 本地开发人员机器:当我们运行应用程序时,一切正常,我们的Web服务能够访问第三方URL。 (本地机器使用Windows操作系统)

  • 本地开发服务器:在开发服务器上部署应用程序后,我们无法访问第三方URL并获得Http Proxy 407错误。 (我们正在使用Linux,使用IBM J9 JVM。)

为了解决这个问题,我们尝试设置-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调用的实现需要了解代理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM