相关疑难解决方法(0)

与其他客户端中不存在的node.js的ECONNREFUSED错误

我正在httpnode.js客户提出请求,但我收到了ECONNREFUSED错误消息.当我使用我的浏览器制作看似相同的请求时curl(1),它的工作正常

这是节点请求:

var options = {
  host: 'localhost',
  port: 8080,
  path: '/explorers/1.0/agegroup',
  method: 'GET'
};

var req = http.request(options, function(res) {
  res.setEncoding('utf8');
  res.on('data', function (chunk) {
    console.log('BODY: ' + chunk);
  });
});

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

req.end();
Run Code Online (Sandbox Code Playgroud)

它给了我错误:

{ [Error: connect ECONNREFUSED]
  code: 'ECONNREFUSED',
  errno: 'ECONNREFUSED',
  syscall: 'connect' }
Run Code Online (Sandbox Code Playgroud)

但是当我与不同的客户端(curl在这种情况下)做出相同的请求时:

$ curl http://localhost:8080/explorers/1.0/agegroup
{... response JSON ...}
Run Code Online (Sandbox Code Playgroud)

其他说明:

  • 我已尝试将主机更改为www.google.com,将端口更改为80,并且节点成功建立连接

  • 我已经尝试更改服务器的端口,我仍然可以向所有客户端发出请求但node.js(仍然可以ECONNREFUSED)

  • 我正在连接的服务器是CherryPy WSGI服务器.当我尝试连接到nodelocalhost:8080 的服务器时,它运行正常,这会让我认为这是服务器的问题,除了其他客户端使用CherryPy服务器. …

http node.js

25
推荐指数
4
解决办法
4万
查看次数

标签 统计

http ×1

node.js ×1