2013-07-11 92 views
0

我有很简单的服务器Node.js:它可能抛出哪些HTTP异常?

http.createServer(function(request, response) { 
    response.writeHead(200); 
    response.end("Hello world"); 
}).listen(8080); 

可以把它抛出什么异常,除了listen EADDRINUSE
如果用户在请求发送过程中断开连接,是否会发生错误?或者类似的东西?

回答

1

它不会引发异常在这样的情况作为断开客户端 - 很“正常”的行为。

EADDRINUSE异常在调用http.createServer时引发,因为它试图创建套接字,并且在端口已被使用的情况下将失败。

虽然你说的事件,是幕后的东西,比如客户端断开连接,或超时,或类似的。这些事件是异步发生的,这就是为什么他们不能仅仅在不知情的情况下抛出node.js执行。

你还有事件要求它自己,并且必须订阅他们,这里有很好的答案,涵盖你需要的东西:node.js http server, detect when clients disconnect