node.js超时timeout详解


Posted in Javascript onNovember 26, 2014

如果在指定的时间内服务器没有做出响应(可能是网络间连接出现问题,也可能是因为服务器故障或网络防火墙阻止了客户端与服务器的连接),则响应超时,同时触发http.ServerResponse对象的timeout事件.

response.setTimeout(time,[callback]);

也可以不在setTimeout中指定回调函数,可以使用时间的监听的方式来指定回调函数.

如果没有指定超时的回调函数,那么出现超时了,将会自动关闭与http客户端连接的socket端口.如果指定了超时的回调函数,那么超时了,将会出现调用回调函数,而不会自动关闭与http客户端连接的socket端口.

var http=require("http");

var server=http.createServer(function(req,res){

    if(req.url!=="/favicon.ico"){

        //超时监听

        /*res.setTimeout(1000);

        res.on("timeout",function(){

            console.log("响应超时.");

        });*/

        //超时直接回调

        res.setTimeout(1000,function(){

           console.log("响应超时.");

        });

        setTimeout(function(){

            res.setHeader("Content-Type","text/html");

            res.write("<html><head><meta charset='utf-8' /></head>");

            res.write("你好");

            res.end();

        },2000);

    }

});

server.listen(1337,"localhost",function(){

    console.log("开始监听"+server.address().port+"......");

});

运行代码结果:

node.js超时timeout详解

删除超时的回调函数后:

node.js超时timeout详解

Javascript 相关文章推荐
js身份证验证超强脚本
Oct 26 Javascript
JS中Iframe之间传值的方法
Mar 11 Javascript
jquery实现图片翻页效果
Dec 23 Javascript
如何减少浏览器的reflow和repaint
Feb 26 Javascript
教你使用javascript简单写一个页面模板引擎
May 05 Javascript
举例讲解JavaScript substring()的使用方法
Nov 09 Javascript
JavaScript 2048 游戏实例代码(简单易懂)
Mar 25 Javascript
微信小程序如何获取用户信息
Jan 26 Javascript
使用mint-ui实现省市区三级联动效果的示例代码
Feb 09 Javascript
深入浅出理解JavaScript闭包的功能与用法
Aug 01 Javascript
详解Webpack loader 之 file-loader
Nov 07 Javascript
一秒学会微信小程序制作table表格
Feb 14 Javascript
node.js+Ajax实现获取HTTP服务器返回数据
Nov 26 #Javascript
使用node.js 获取客户端信息代码分享
Nov 26 #Javascript
node+express+jade制作简单网站指南
Nov 26 #Javascript
JS简单操作select和dropdownlist实例
Nov 26 #Javascript
node+express+ejs制作简单页面上手指南
Nov 26 #Javascript
node.js使用require()函数加载模块
Nov 26 #Javascript
javascript中setTimeout和setInterval的unref()和ref()用法示例
Nov 26 #Javascript
You might like
PHP 服务器配置(使用Apache及IIS两种方法)
2009/06/01 PHP
PHP函数之日期时间函数date()使用详解
2013/09/09 PHP
php导入大量数据到mysql性能优化技巧
2014/12/29 PHP
PHP编程基本语法快速入门手册
2016/01/07 PHP
Yii2框架操作数据库的方法分析【以mysql为例】
2019/05/27 PHP
Firefox window.close()的使用注意事项
2009/04/11 Javascript
jquery1.4后 jqDrag 拖动 不可用
2010/02/06 Javascript
一个轻量级的javascript库 pj介绍
2010/12/19 Javascript
DOM2非标准但却支持很好的几个属性小结
2012/01/21 Javascript
JS JSON对象转为字符串的简单实现方法
2013/11/18 Javascript
JavaScript中String.prototype用法实例
2015/05/20 Javascript
学习JavaScript设计模式之单例模式
2016/01/19 Javascript
第一次接触神奇的Bootstrap表单
2016/07/27 Javascript
Node.js调试技术总结分享
2017/03/12 Javascript
bootstrap Table服务端处理分页(后台是.net)
2017/10/19 Javascript
vue的无缝滚动组件vue-seamless-scroll实例
2017/12/18 Javascript
基于vue cli 通过命令行传参实现多环境配置
2018/07/12 Javascript
javascript中call()、apply()的区别
2019/03/21 Javascript
微信小程序实现点击效果
2019/06/21 Javascript
使用Python的Django框架实现事务交易管理的教程
2015/04/20 Python
Python的语言类型(详解)
2017/06/24 Python
python,Django实现的淘宝客登录功能示例
2019/06/12 Python
python实现简单五子棋游戏
2019/06/18 Python
Python列表list常用内建函数实例小结
2019/10/22 Python
搭建pypi私有仓库实现过程详解
2020/11/25 Python
python3中数组逆序输出方法
2020/12/01 Python
python 将Excel转Word的示例
2021/03/02 Python
Under Armour澳大利亚官网:美国知名的高端功能性运动品牌
2018/02/22 全球购物
英国婴儿及儿童产品商店:TigerParrot
2019/03/04 全球购物
抽象类和接口的区别
2012/09/19 面试题
经济管理专业毕业生自荐信范文
2014/01/02 职场文书
优秀中学生事迹材料
2014/01/31 职场文书
硕士研究生就业推荐信
2014/05/18 职场文书
python3实现Dijkstra算法最短路径的实现
2021/05/12 Python
sql通过日期判断年龄函数的示例代码
2021/07/16 SQL Server
详解ZABBIX监控ESXI主机的问题
2022/06/21 Servers