我想在node.js中使用HTTP客户端时遇到ECONNREFUSED错误。我正在做的这样请求:使用http.request在node.js中捕获ECONNREFUSED?
var http = require('http');
var options = { host: 'localhost', port: '3301', path: '/', method: 'GET' };
http.request(options).on('response', function (res) {
// do some stuff
});
我无法弄清楚如何抓住这个错误:
Error: connect ECONNREFUSED
at errnoException (net.js:614:11)
at Object.afterConnect [as oncomplete] (net.js:605:18)
如果我做request.on('error', function() {});
,不抓住它。如果我这样做:
var req = request.on(etc)
req.on('error', function blah() {});
然后我得到TypeError: Object false has no method 'on'
。
我真的必须做一个顶级未捕获的错误的东西来处理这个?此刻,无论我做什么,我的整个过程都会退出。
编辑:我发现了如何通过创建connection
对象做一些博客文章,呼吁对request
,然后connection
对象绑定到错误,但不会使整个http.request()
快捷没用?
我想通了。这是因为我这样做: var req = http。request(options).on('response',function(res){do do stuff })。end(); req.on('error',handleError); 我在调用end()之后调用了req.on。捂脸! – Cera
对于未来的观点,您是否能够发布该博客文章的链接?我认为在这里会很有帮助。 – CSilivestru