使用 Node.js,当请求一个 HTTP 响应时,在最佳情况下,请求会返回一个 HTTP 响应。
但是,有时请求会中断,例如,该站点具有 404 代码,或者该站点根本不存在。当请求一批 URL 时,如果在请求的 1000 个 URL 中的第 200 个 URL 上有 404 代码,则整个脚本会中断。这是我的代码:
var hostNames = ['www.gizmodo.com','www.sitethatdoesnotexist123.com','www.google.com'];
for (i; i < hostNames.length; i++){
var options = {
host: hostNames[i],
path: '/'
};
(function (i){
http.get(options, function(res) {
var obj = {};
obj.url = hostNames[i];
obj.statusCode = res.statusCode;
obj.headers = res.headers;
db.scrape.save(obj);
}).on('error',function(e){
console.log("Error Site: " + hostNames[i]);
});
})(i);
};
有没有办法,例如,如果该站点不存在,我只是跳到下一个 URL,而不是让脚本中断?
编辑:固定。感谢用户 DavidKemp