我正在一個小測試節點項目中運行以下內容。錯誤:連接ECONNREFUSED node.js https.get請求
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文件的請求。我知道該文件存在,所以我不知道爲什麼我會得到上述錯誤。該文件可以在瀏覽器中運行,不需要驗證。
UPDATE:我編輯了代碼。創造了一個承諾,並添加了一個.on('error'...
來解決任何問題。
以下是目前輸出:
([Error: connect ECONNREFUSED xxx.xx.xxx.xx:xxx]
code: 'ECONNREFUSED',
errno: 'ECONNREFUSED',
syscall: 'connect',
address: 'xxx.xxx.xxx.xxx',
port: 443)
你確定你的瀏覽器是不是爲您服務緩存版本從連接到HTTPS代理服務器後面?您是否使用某種可防止「未授權」應用程序進行網絡連接的防火牆? – robertklep
@robertklep - 是的,我在一個代理。我有細節(端口等)。如你所說,這可能會導致問題。我已經有'npm config set proxy http'和'npm config set proxy https'設置了。但是這個錯誤是由什麼引起的? – fidev
如果您使用代理服務器,請查看['request'](https://github.com/request/request#proxies),這使得處理代理服務器變得更容易。 – robertklep