错误:连接ECONNREFUSED node.js https.get请求

我在一个小testing节点项目中运行以下内容。

var https = require('https'); var request = https.get('https://example.com/script.json', function(response){ console.dir(response); }); request.on('error', function(){ console.log(err); }); 

当我尝试console.dir的响应,我得到以下错误。

 throw er; // Unhandles 'error' event Error: connect ECONNREFUSED xxx.xx.xxx.xx:xxx 

这是一个简单的获取请求到外部服务器上的JSON文件。 我知道该文件存在,所以我不知道为什么我得到上述错误。 该文件可以在浏览器中运行,不需要validation。

更新 :我编辑的代码。 创造了一个承诺,并添加了一个.on('error'...来解决任何问题。

现在输出如下:

 ( [Error: connect ECONNREFUSED xxx.xx.xxx.xx:xxx] code: 'ECONNREFUSED', errno: 'ECONNREFUSED', syscall: 'connect', address: 'xxx.xxx.xxx.xxx', port: 443 ) 

感谢来自@robertklep的帮助,我提出了以下解决scheme,它允许我使用请求从代理后面连接到HTTPS

 const https = require('https'); const request = require('request'); request( { 'url':'https://https://example.com/script.json', 'proxy':'http://xx.xxx.xxx.xx' }, function (error, response, body) { if (!error && response.statusCode == 200) { console.log(body); } } ); 

另一台服务器没有启动,或者没有监听443端口,因此连接被拒绝。 另一种select是,nodejs应用程序parsing这个例子url不同于你的电脑不同的IP。