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 相关文章推荐
jQuery ReferenceError: $ is not defined 错误的处理办法
May 10 Javascript
Javascript中作用域的详细介绍
Oct 06 Javascript
javascript容错处理代码(屏蔽js错误)
Jan 20 Javascript
AngularJS下$http服务Post方法传递json参数的实例
Mar 29 Javascript
微信小程序实现全局搜索代码高亮的示例
Mar 30 Javascript
傻瓜式vuex语法糖kiss-vuex整理
Dec 21 Javascript
vue实现购物车抛物线小球动画效果的方法详解
Feb 13 Javascript
node.js中ws模块创建服务端和客户端,网页WebSocket客户端
Mar 06 Javascript
vue elementui el-form rules动态验证的实例代码详解
May 23 Javascript
Async/Await替代Promise的6个理由
Jun 15 Javascript
从0到1学习JavaScript编写贪吃蛇游戏
Jul 28 Javascript
Vue中 axios delete请求参数操作
Aug 25 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
一键删除顽固的空文件夹 软件下载
2007/01/26 PHP
PHP中余数、取余的妙用
2015/06/29 PHP
PHP中串行化用法示例
2016/11/16 PHP
图片自动更新(说明)
2006/10/02 Javascript
HTTP状态代码以及定义(解释)
2007/02/02 Javascript
JS模拟多线程
2007/02/07 Javascript
jquery多浏览器捕捉回车事件代码
2010/06/22 Javascript
JavaScript分秒倒计时器实现方法
2015/02/02 Javascript
高性能JavaScript模板引擎实现原理详解
2015/02/05 Javascript
Node.js抓取中文网页乱码问题和解决方法
2015/02/10 Javascript
JavaScript 变量、作用域及内存
2015/04/08 Javascript
详解Javascript几种跨域方式总结
2017/02/27 Javascript
jQuery序列化后的表单值转换成Json
2017/06/16 jQuery
JS简单实现滑动加载数据的方法示例
2017/10/18 Javascript
使用webpack搭建vue项目实现脚手架功能
2019/03/15 Javascript
如何为你的JavaScript代码日志着色详解
2019/04/08 Javascript
Vue常用的全选/反选的示例代码
2020/02/19 Javascript
[47:48]DOTA2上海特级锦标赛D组小组赛#2 Liquid VS VP第三局
2016/02/28 DOTA
如何解决django配置settings时遇到Could not import settings 'conf.local'
2014/11/18 Python
Python比较文件夹比另一同名文件夹多出的文件并复制出来的方法
2015/03/05 Python
python使用Image处理图片常用技巧分析
2015/06/01 Python
bat和python批量重命名文件的实现代码
2016/05/19 Python
详解Python打包分发工具setuptools
2019/08/05 Python
keras在构建LSTM模型时对变长序列的处理操作
2020/06/29 Python
如何利用CSS3制作3D效果文字具体实现样式
2013/05/02 HTML / CSS
html5本地存储_动力节点Java学院整理
2017/07/12 HTML / CSS
HTML5中drawImage用法分析
2014/12/01 HTML / CSS
Quiksilver美国官网:始于1969年的优质冲浪服和滑雪板外套
2020/04/20 全球购物
护士毕业生自我鉴定
2014/02/08 职场文书
教师专业自荐书范文
2014/02/10 职场文书
经贸专业毕业生求职信
2014/03/23 职场文书
项目申报专员岗位职责
2014/07/09 职场文书
致创业您:正能量激励人心句子(48条)
2019/08/15 职场文书
Nginx服务器添加Systemd自定义服务过程解析
2021/03/31 Servers
Python Pycharm虚拟下百度飞浆PaddleX安装报错问题及处理方法(亲测100%有效)
2021/05/24 Python
css清除浮动clearfix:after的用法详解(附完整代码)
2023/05/21 HTML / CSS