リクエスト関数のコールバックによってエラーが渡されています。エラーがコールバックに渡される条件を特定しようとしています。
var request = require('request');
request('http://www.google.com', function (error, response, body) {
if(error){
//why or when would an error be created?
}
else if (response.statusCode == 200) {
console.log(body) // Show the HTML for the Google homepage.
}
else{
// when would this happen ?
}
})
ドキュメントは、エラーオブジェクトが作成されて渡される原因となる条件をカバーしていないようです。現時点では、200 または 300 以外の場合にエラーが発生すると想定していますが、推測にすぎません。