我有以下代码...
http.get({
host: ipAddress,
port: 1199
}, (response)=>{
...
response.on("error", ()=>{...});
});
现在我知道ipAddress为null,并且在1199上没有任何运行,因此我预计会出现错误。
错误:连接ECONNREFUSED 127.0.0.1:1199
但是,当我尝试捕获时,它不能捕获错误,所以...
try{
http.get({
host: ipAddress,
port: 1199
}, (response)=>{
...
response.on("error", ()=>{...});
});
} catch(ex){
console.log("error");
}
我仍然没有看到日志中的错误……
错误:连接ECONNREFUSED 127.0.0.1:1199
那我该如何捕获错误?
答案 0 :(得分:1)
将error
侦听器放置在ClientRequest
调用返回的http.get
上。
http.get({
host: ipAddress,
port: 1199
}, (response)=>{
...
}).on("error", ()=>{...});
https://nodejs.org/api/http.html#http_class_http_clientrequest https://nodejs.org/api/http.html#http_http_get_options_callback