![](/img/trans.png)
[英]Should one listen to the "error" event of http.ClientReuqest, in node?
[英]node http server listen and on('open') event
这个问题与我之前的问题有关:
节点 httpServer EADDRINUSE 和下一个端口
目前,我做
var port = 8000;
HTTPserver
.listen(port, function()
{
console.log('HTTP listening:' + port);
})
.on('error', function(err)
{
if (err.code === 'EADDRINUSE')
{
// port is currently in use
console.log('server Open error:' + port);
port++;
HTTPserver
.listen(port);
}
});
但是,这种代码结构在事情变得复杂时很难管理,我更愿意这样写:
var port = 8000;
HTTPserver
.on('open', function()
{
console.log('HTTP listening:' + port);
})
.on('error', function(err)
{
if (err.code === 'EADDRINUSE')
{
// port is currently in use
console.log('server Open error:' + port);
port++;
HTTPserver.listen(port);
}
});
HTTPserver.listen(port);
这对我来说看起来更直接,实际上在复杂的情况下更容易处理。
但是,引用http://nodejs.org/api/http.html似乎不存在事件“打开”。
有没有相应的事件或者不能这样写?
谢谢。
我认为您正在寻找监听事件:
const port = 8000;
HTTPserver.on('listening', function() {
console.log('HTTP listening:' + port);
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.