admin管理员组文章数量:1302329
This question is related to my previous one:
node httpServer EADDRINUSE and next port
Currently, I do
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);
}
});
However, this code structure is hard to manage when things get plicated, and I perfer to write as follows:
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);
This appears more straightforwad to me, and actually easier to handle in plicated situations.
However, referring .html appears that an event 'open' does not exist.
Is there any corresponding event or it's not possible to write like this?
Thanks.
This question is related to my previous one:
node httpServer EADDRINUSE and next port
Currently, I do
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);
}
});
However, this code structure is hard to manage when things get plicated, and I perfer to write as follows:
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);
This appears more straightforwad to me, and actually easier to handle in plicated situations.
However, referring http://nodejs/api/http.html appears that an event 'open' does not exist.
Is there any corresponding event or it's not possible to write like this?
Thanks.
Share Improve this question edited May 23, 2017 at 12:09 CommunityBot 11 silver badge asked Mar 11, 2014 at 1:19 user1028880user1028880 8-
What are you expecting
.open()
to do? – Sterling Archer Commented Mar 11, 2014 at 1:24 -
Well, whatever. It's so mon to have
open
event for socket things, and I don't know why node basic server does not have this. – user1028880 Commented Mar 11, 2014 at 1:29 -
I have no idea what you just said. "Whatever"?? You aren't even saying what you think
open
should do for a node server – Sterling Archer Commented Mar 11, 2014 at 1:31 -
Oh, you have suggested
open
method instead ofon('open')
, I have tried, but it says:Object #<Server> has no method 'open'
, and actually, there's no such a method in the documentation. – user1028880 Commented Mar 11, 2014 at 1:36 -
Sorry, I mistyped. What are you expecting
.on("open"
to do – Sterling Archer Commented Mar 11, 2014 at 1:37
1 Answer
Reset to default 9I think you are looking for the listening event:
const port = 8000;
HTTPserver.on('listening', function() {
console.log('HTTP listening:' + port);
})
本文标签: javascriptnode http server listen and on(39open39) eventStack Overflow
版权声明:本文标题:javascript - node http server listen and on('open') event - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1741708347a2393692.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论