java - 在httpRequest类中,intranet站点

  显示原文与译文双语对照的内容
0 0

我们正在httpRequest类中的setEndpoint中设置一个内联网。 当最后一行执行时,它返回一个错误,说明: System.CalloutException: 读取超时如果我通过任何它的他网站,这样的网站就完美无误。 了解如何将端点URL设置为intranet站点?


 string URL = 'some intranet website';
 Http http = new Http();
 HttpRequest req = new HttpRequest();
 req.setEndpoint(URL);
 req.setMethod('GET');
 HttpResponse res = http.send(req);

时间: 原作者:

0 0

来自Salesforce的所有请求都将从它的众所周知的IP地址池中。

  1. 你的内部网站点可以从外部获得? 如果你可以在浏览器中粘贴 URL,它并不意味着SF可以访问它 ! 例如你可以从家庭( 不使用 VPN,Citrix等) 访问你的内部网?
  2. 可以增加读取超时。 将它设置为 1分钟,看看发生了什么: req.setTimeout(60000);
  3. 如果仍然存在超时,我怀疑防火墙配置为只删除问题。 就像一个黑洞,没有返回"未授权,你是否有用户名&密码",没有任何东西表明这个地址实际上是有效的。 请与你的网络管理员联系,询问他是否可以 whitelist
  4. 当然,你可能不想让每个Salesforce客户机都能访问它。 如果你需要传递一些认证机制或者决定你需要一个代理,那就由你来决定。 特别需要代理,特别是如果你的内部网站点需要NTLM身份验证( 大致讲与 Windows 域相关- 当然,Salesforce服务器不会与你的内部网服务器在同一局域网中) 。
原作者:
...