在node.js中使用http.request()获取请求超时

时间:2013-03-15 10:08:30

标签: node.js express

我使用nodejs http.request方法将一些数据发布到外部API。我这样测试:

var options={
hostname:'www.google.com',
port:80,
method:'POST'
};

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


});
//console.log(req);
req.on('error', function(e) {
  console.log('problem with request: ' + e.message);

});

这整个包裹在路线后的快速服务器内。 但在控制台中,它总是表示在一段时间后连接超时。我很无能。

1 个答案:

答案 0 :(得分:2)

您只是创建一个request对象。你也必须发送它。使用req.end()实际发送请求。

req.on('error', function(e) {
  console.log('problem with request: ' + e.message);
});
req.end();  //add it