我需要连接到一个网页,并返回页面,我已经能够使用http.request
但我需要请求的页面可能需要较长时间才能达到的状态代码,有时几分钟,所以我总是得到一个socket hang up
错误。Node.js的请求的网页
我用下面的代码至今:
var reqPage = function(urlString, cb) {
// Resolve the URL
var path = url.parse(urlString);
var req = http.request({
host: path.hostname,
path: path.pathname,
port: 80,
method: 'GET'
});
req.on('end', function() {
cb.call(this, res);
});
req.on('error', function(e) {
winston.error(e.message);
});
};
什么我需要做什么来确保我的应用程序仍然会尝试连接到的页面,即使它会需要几分钟?
完美!谢谢。它现在已经请求了几分钟的网页,而不是放弃。干杯。 – James 2013-04-05 16:27:57
啊,一段时间后,有一次我请第二页我'ECONNREFUSED'。 – James 2013-04-05 16:30:55
这可能与服务器有关。这就是说你可以使用async模块的while函数重试每个请求直到成功。 https://github.com/caolan/async#whilst – Noah 2013-04-05 16:39:51