我編寫了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. 無法使用java中的smack庫登錄xmpp服務器
- 2. 服務器使用Unirest登錄java
- 3. 無法使用phpseclib登錄到我的apache服務器
- 4. 無法使用Azure平臺登錄到SQL服務器
- 5. 使用LWP登錄到JSP服務器
- 6. 使用cURL登錄到服務器
- 7. 使用Tomcat在本地主機登錄後無法登錄到MySQL服務器
- 8. 在使用代理服務器時登錄站點
- 9. 使用代理服務器在TYPO3中登錄後端
- 10. #2002無法登錄到MySQL服務器
- 11. #1045無法登錄到MySQL服務器
- 12. 無法登錄到MySQL服務器(PhpMyAdmin)
- 13. 1045無法登錄到MySQL服務器
- 14. 無法登錄到FTP服務器
- 15. 無法登錄到SQL服務器
- 16. 無法使用Windows代理連接到Enterprise Puppet服務器
- 17. Phpstorm任務服務器無法登錄到Youtrack服務器
- 18. 如何使用Java遠程登錄到Jenkins服務器?
- 19. 嘗試使用Google+登錄時Google Play服務無法使用
- 20. CakePHP。登錄無法使用部署服務器
- 21. 無法使用其他服務器的GAPI(Google Analaytic API)登錄
- 22. 無法使用Windows中的Paramiko登錄Linux服務器
- 23. 使用Ansible無密碼sudo登錄到服務器
- 24. 使用WinSCP.com(cmd行)無密碼登錄到服務器
- 25. 無法使Ajax登錄到RESTful服務器
- 26. 登錄到SharePoint Web服務使用一個非FBA服務器
- 27. 第三次調用服務器無法從登錄中找到cookie(使用Codenameone)
- 28. 無法使用Jmeter從本地服務器登錄到應用程序
- 29. 使用Python登錄到公司代理服務器以提取數據
- 30. 無法登錄到我無法登錄到SQL服務器的SQL Server