在http.ServerResponse对象的end方法被调用之前,如果连接被中断,将触发http.ServerResponse对象的close事件.GpAHTML5中文学习网 - HTML5先行者学习网
GpAHTML5中文学习网 - HTML5先行者学习网
var http=require("http");GpAHTML5中文学习网 - HTML5先行者学习网
var server=http.createServer(function(req,res){GpAHTML5中文学习网 - HTML5先行者学习网
if(req.url!=="/favicon.ico"){GpAHTML5中文学习网 - HTML5先行者学习网
res.on("close",function(){GpAHTML5中文学习网 - HTML5先行者学习网
console.log("连接中断")GpAHTML5中文学习网 - HTML5先行者学习网
});GpAHTML5中文学习网 - HTML5先行者学习网
setTimeout(function(){GpAHTML5中文学习网 - HTML5先行者学习网
res.setHeader("Content-Type","text/html");GpAHTML5中文学习网 - HTML5先行者学习网
res.write("<html><head><meta charset='utf-8' /></head>");GpAHTML5中文学习网 - HTML5先行者学习网
res.write("你好");GpAHTML5中文学习网 - HTML5先行者学习网
res.end();GpAHTML5中文学习网 - HTML5先行者学习网
},10000);GpAHTML5中文学习网 - HTML5先行者学习网
}GpAHTML5中文学习网 - HTML5先行者学习网
});GpAHTML5中文学习网 - HTML5先行者学习网
GpAHTML5中文学习网 - HTML5先行者学习网
server.listen(1337,"localhost",function(){GpAHTML5中文学习网 - HTML5先行者学习网
console.log("开始监听"+server.address().port+"......");GpAHTML5中文学习网 - HTML5先行者学习网
});GpAHTML5中文学习网 - HTML5先行者学习网
GpAHTML5中文学习网 - HTML5先行者学习网上面代码是这样的:GpAHTML5中文学习网 - HTML5先行者学习网
当客户端发生请求后,经过10秒后向客户端发送"你好".同时监听close事件.GpAHTML5中文学习网 - HTML5先行者学习网
只要在10秒内关闭了服务器,服务端就会出现"连接被中断",因为10秒内,并不会执行res.end()方法.GpAHTML5中文学习网 - HTML5先行者学习网