浅析node.js中close事件

Laila ·
更新时间:2024-09-20
· 636 次阅读

在http.ServerResponse对象的end方法被调用之前,如果连接被中断,将触发http.ServerResponse对象的close事件.

代码如下:
 var http=require("http");
 var server=http.createServer(function(req,res){
     if(req.url!=="/favicon.ico"){
         res.on("close",function(){
             console.log("连接中断")
         });
         setTimeout(function(){
             res.setHeader("Content-Type","text/html");
             res.write("<html><head><meta charset='utf-8' /></head>");
             res.write("你好");
             res.end();
         },10000);
     }
 });
 
 server.listen(1337,"localhost",function(){
     console.log("开始监听"+server.address().port+"......");
 });

上面代码是这样的:

当客户端发生请求后,经过10秒后向客户端发送"你好".同时监听close事件.

只要在10秒内关闭了服务器,服务端就会出现"连接被中断",因为10秒内,并不会执行res.end()方法.



close node.js node js

需要 登录 后方可回复, 如果你还没有账号请 注册新账号