我编写了Java代码以登录到Salesforce并在防火墙服务器上运行此代码。为此,由于防火墙的原因,我必须在连接到Salesforce之前指定代理网址和代理端口。但是,我收到代理网址的unknownhostexception错误。如果我尝试通过curl通过代理设置登录,我可以连接。那么怎么会有使用Java连接的问题呢?任何帮助表示赞赏。使用代理服务器无法使用Java登录到Salesforce
1
A
回答
1
显然这个问题是由JVM配置引起的。我们必须配置JVM以使用代理设置,如下所示:
System.setProperty("http.proxyHost", crmProxyURL);
System.setProperty("http.proxyPort", crmProxyPort);
0
根据您的HTTP库,系统设置可能不够或不需要。在Salesforce context很可能会尝试使用Jetty HTTP Client。在这种情况下,系统属性被忽略,并且代理需要由码头客户端来处理:
ProxyConfiguration proxyConfig = httpClient.getProxyConfiguration();
HttpProxy proxy = new HttpProxy("proxyHost", proxyPort);
proxyConfig.getProxies().add(proxy);
的Apache HTTP Client,另一种流行的选择,还利用其自己的小机制:
HttpHost proxy = new HttpHost("proxyHost", proxyPort, "https");
RequestConfig config = RequestConfig.custom().setProxy(proxy).build();
HttpGet request = new HttpGet(someURL);
request.setConfig(config);
这里比较有意思:可以指定使用http或https作为代理协议。
一般情况下,我发现使用其中一个http客户端比JDK低级别功能更容易。
相关问题
- 1. 无法使用Azure平台登录到SQL服务器
- 2. 无法使用phpseclib登录到我的apache服务器
- 3. 使用cURL登录到服务器
- 4. 使用Tomcat在本地主机登录后无法登录到MySQL服务器
- 5. 无法登录到SQL服务器
- 6. #1045无法登录到MySQL服务器
- 7. 无法使用Windows代理连接到Enterprise Puppet服务器
- 8. 如何使用Java远程登录到Jenkins服务器?
- 9. 无法使用Windows中的Paramiko登录Linux服务器
- 10. 使用Ansible无密码sudo登录到服务器
- 11. 无法使Ajax登录到RESTful服务器
- 12. 登录到SharePoint Web服务使用一个非FBA服务器
- 13. 无法登录到我无法登录到SQL服务器的SQL Server
- 14. 使用Python登录到公司代理服务器以提取数据
- 15. Domino服务器7.0.3FP1使用java代理的代理设置
- 16. 无法登录使用PIM经理
- 17. 如何使用Java连接到代理服务器
- 18. 登录到服务器时未登录到服务器
- 19. 用户登录后使用服务检查服务器更新
- 20. 无法使用Firebase登录Facebook登录
- 21. 无法登录SQL服务器
- 22. Android使用谷歌登录,服务器端java
- 23. 无法使用cakephp登录
- 24. 无法使用scrapy登录
- 25. 无法使用硒登录
- 26. 无法登录使用CLI
- 27. 无法使用php登录
- 28. 无法登录使用PHP
- 29. 无法连接到远程MySQL服务器(使用默认服务器代替)
- 30. 使用cmd.exe无法登录到heroku