我有一个node.js应用程序,我想用它来检查特定的站点是否启动并返回正确的响应代码。由于域名未解决或请求超时,我希望能够捕获出现的任何错误。问题在于这些错误会导致Node出错。我对这个完整的异步编程方法很陌生,所以我不确定把try/catch语句放在哪里。如何在node.js中捕获http客户端请求异常
我有一个类似/ check/site1的ajax调用。服务器端调用一个试图建立连接并返回statusCode的函数。这是一个非常简单的函数,并且我将每行都包含在try/catch中,并且它从不捕获任何东西。那就是:
function checkSite(url){
var site = http.createClient(80, url);
var request = site.request('GET', '/', {'host': url});
request.end();
return request;
}
即使每个包裹在一个try/catch那些行的,我仍然会得到捕获的异常像EHOSTUNREACH等。我希望能够抓住那些并将其返回给ajax调用。
关于接下来要做什么的建议?
最翔实。回答。永远。你推荐什么 是我现在有它设置,但不是一个选择,我会检查多个网站和各自所需的响应。现在我将研究其他路由,直到添加更好的异常处理。 这真的是令人失望,这些类型的错误只是浮动到顶部。 – mattmcmanus 2010-12-01 20:28:14