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