问题:
我正在尝试向在 Google Cloud Platform 上的 Compute Engine 实例上运行的 Docker 实例发出 POST 请求。
我收到以下错误:
错误:错误:连接 ETIMEDOUT 外部IP:端口
我做错了什么?
<小时/>编辑:缺少允许 tcp:端口入口的防火墙规则。这修复了上面的错误。
现在我有以下错误:
Error: connect ECONNREFUSED ExternalIP:Port
发生的情况是我尝试从本地主机连接到 Node ,但该 Node 被配置为仅接受来自自身的请求(计算引擎实例):
https://github.com/clemahieu/raiblocks/wiki/Docker-node
(我尝试了带和不带“-p 127.0.0.1:7076:7076”)
我需要找到一种方法来安全地向 Node 发出请求,而不让任何人(除了我的本地计算机和我将在其上托管网站的服务器)访问该 Node 。
我添加了一条防火墙规则以允许从 IP 地址进行访问,但它没有改变任何内容。
有什么想法吗?
<小时/>代码:
request.post(
{
url: 'https://ExternalIP:Port',
json: {
action: '…',
item1: '…'
}
},
function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log("BODY: " + body);
} else {
console.log("ERROR: " + error);
}
}
);
最佳答案
尚不清楚您是否有实际的 HTTPS 服务器正在监听端口 443(或另一端的指定端口)。
我还想知道您是否真的可以将 HTTPS 与原始 IP 地址一起使用,因为通常需要涉及域 + 证书。
关于javascript - 如何POST到外部IP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47996881/