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 相关文章推荐
JavaScript入门教程(1) 什么是JS
Jan 31 Javascript
JavaScript 事件的一些重要说明
Oct 25 Javascript
JS+CSS实现弹出全屏灰黑色透明遮罩效果的方法
Dec 20 Javascript
JavaScript实现自动生成网页元素功能(按钮、文本等)
Nov 21 Javascript
JS组件Bootstrap Select2使用方法详解
Apr 17 Javascript
深入理解js promise chain
May 05 Javascript
Bootstrap CSS布局之表格
Dec 17 Javascript
详解Javascript中DOM的范围
Feb 13 Javascript
vue2.x+webpack快速搭建前端项目框架详解
Nov 30 Javascript
JavaScript DOM常用操作代码汇总
Jul 03 Javascript
前端开发基础javaScript的六大作用
Aug 06 Javascript
Bootstrap FileInput实现图片上传功能
Jan 28 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
第九节 绑定 [9]
2006/10/09 PHP
php4的session功能评述(一)
2006/10/09 PHP
同一空间绑定多个域名而实现访问不同页面的PHP代码
2006/12/06 PHP
PHP常用处理静态操作类
2015/04/03 PHP
CI框架支持$_GET的两种实现方法
2016/05/18 PHP
PHP封装函数实现生成随机的字符串验证码
2017/01/24 PHP
ajax调用返回php接口返回json数据的方法(必看篇)
2017/05/05 PHP
PHP使用Redis长连接的方法详解
2018/02/12 PHP
thinkphp5修改view到根目录实例方法
2019/07/02 PHP
初学JavaScript第二章
2008/09/30 Javascript
jQuery ajax cache缓存问题
2010/07/01 Javascript
初学Jquery插件制作 在SageCRM的查询屏幕隐藏部分行的功能
2011/12/26 Javascript
自写的jQuery异步加载数据添加事件
2014/05/15 Javascript
window.onload使用指南
2015/09/13 Javascript
今天抽时间给大家整理jquery和ajax的相关知识
2015/11/17 Javascript
在AngularJS中使用jQuery的zTree插件的方法
2016/04/21 Javascript
js选项卡的制作方法
2017/01/23 Javascript
vue学习笔记之指令v-text &amp;&amp; v-html &amp;&amp; v-bind详解
2017/05/12 Javascript
浅谈react性能优化的方法
2018/09/05 Javascript
vue-router的使用方法及含参数的配置方法
2018/11/13 Javascript
JointJS流程图的绘制方法
2018/12/03 Javascript
新手入门js闭包学习过程解析
2019/10/08 Javascript
Python实现获取邮箱内容并解析的方法示例
2018/06/16 Python
Linux下python与C++使用dlib实现人脸检测
2018/06/29 Python
python定时复制远程文件夹中所有文件
2019/04/30 Python
通过python实现弹窗广告拦截过程详解
2019/07/10 Python
PowerBI和Python关于数据分析的对比
2019/07/11 Python
pycharm显示远程图片的实现
2019/11/04 Python
python向xls写入数据(包括合并,边框,对齐,列宽)
2021/02/02 Python
HTML5输入框下拉菜单功能的示例代码
2020/09/08 HTML / CSS
周年庆典邀请函范文
2014/01/24 职场文书
见习报告怎么写
2014/10/31 职场文书
杭白菊导游词
2015/02/10 职场文书
2015年中秋晚会主持稿
2015/07/30 职场文书
CSS3 制作的悬停缩放特效
2021/04/13 HTML / CSS
前端监听websocket消息并实时弹出(实例代码)
2021/11/27 Javascript