从salesforce.com访问本地nodejs服务器

我在我的机器上使用nodejsbuild立了一个本地服务器。 像这样的东西:

var fs = require("fs"); var config = JSON.parse(fs.readFileSync("config.json")); var host = config.host; var port = config.port; var express = require("express"); var app = express(); app.get("/",function(request,response){ response.send('thanks for visiting my site'); }); app.listen(port, host); 

现在,如果我发送一个http请求到这个服务器,我得到了502 seervice不可用的响应。

 HttpRequest req = new HttpRequest(); req.setEndpoint('http://localhost:4555/'); req.setMethod('GET'); Http http = new Http(); HTTPResponse res = http.send(req); 

我还在远程站点设置中添加了localhost url,但仍无法拨打电话。 任何想法如何去呢?

localhost是一个相对地址,它解决的机器取决于它在哪里使用,所以当你在apex代码中使用localhost(它运行在salesforce服务器上)时,它试图与自己谈话而不是你的nodejs主机。 您需要为您的主机提供一个可公开parsing的名称或IP地址,并将其用于您的顶点代码。

Interesting Posts