【问题标题】:ECONNREFUSED error https.requestECONNREFUSED 错误 https.request
【发布时间】:2015-12-23 18:46:47
【问题描述】:

我正在尝试在远程 https 服务器上下载或获取文件。每次其他 URL 正常工作时,我都会收到以下错误。

{ [Error: connect ECONNREFUSED]                                                                                                                                                                                                                                                                                           
  code: 'ECONNREFUSED',                                                                                                                                                                                                                                                                                                   
  errno: 'ECONNREFUSED',                                                                                                                                                                                                                                                                                                  
  syscall: 'connect' }

我正在使用此代码:

var https   = require('https');
var fs      = require('fs');

var url = '/portalfront/datafiles/miscellaneous/csv/kursliste_ws.xml';
//or:     '/portalfront/datafiles/miscellaneous/csv/kursliste.csv'
var options = {
  hostname  : 'dnb.no',
  port      : 443,
  path      : url,
  method    : 'GET'
};

var req = https.request(options, function(res) {
  console.log("statusCode: ", res.statusCode);
  console.log("headers: ", res.headers);
  res.on('data', function(d) {
      process.stdout.write(d);
  });
});
req.end();

req.on('error', function(e) {
  console.error(e);
});

我可以通过邮递员获取网址。

【问题讨论】:

标签: node.js https cross-domain


【解决方案1】:

要检查浏览器发送的请求,您可以使用内置检查器。在网卡中你可以看到所有的请求数据。请求的文件应该在那里。如果您查看浏览器请求标头,您将得到与此类似的结果:

GET /portalfront/datafiles/miscellaneous/csv/kursliste_ws.xml HTTP/1.1
Host: www.dnb.no
Connection: keep-alive
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/45.0.2454.85 Chrome/45.0.2454.85 Safari/537.36
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-US,en;q=0.8,pl;q=0.6
If-None-Match: "5365-5604f43f"
If-Modified-Since: Fri, 25 Sep 2015 07:14:07 GMT

如果您仔细观察,您会发现主机的不同之处。更改主机名:

hostname  : 'dnb.no',

到:

hostname  : 'www.dnb.no',

现在您应该能够成功检索 xml 文件了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-19
    • 2021-01-02
    • 2019-08-07
    • 2020-02-09
    • 2014-02-08
    • 2018-07-10
    • 1970-01-01
    • 2012-05-09
    相关资源
    最近更新 更多