位置: 编程技术 - 正文
推荐整理分享Nodejs回调加超时限制两种实现方法(node 回调函数),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:nodejs回调函数详解,node pipe回调,nodejs函数返回值,node.js回调地狱,node.js回调地狱,nodejs 回调,nodejs 回调,nodejs回调函数,内容如对您有帮助,希望把文章链接给更多的朋友!
Nodejs回调加超时限制两种实现方法
Nodejs下的IO操作都是异步的,有时候异步请求返回太慢,不想无限等待回调怎么办呢?我们可以给回调函数加一个超时限制,到一定时间还没有回调就表示失败,继续后面的步骤。
方案1:用async的parallel实现
在这里我用到了async的parallel方法,parallel可以让若干个异步回调的方法并行执行,正常情况下,所有回调函数都完成后会汇集到parallel最终的回调函数里,但是有一种例外,如果其中一个步骤有错误抛出并直接调用parallel最终的回调函数,利用这个特点就可以实现我们要的功能。
我封装了一个函数asyncWrapper, 逻辑比较简单,直接看代码:
async-timer.js
你可以直接运行这个js看看效果:
模块调用方法:
这种方案的好处是对node没有最低版本要求,引入async库就可以用,缺陷是最终返回的值都是在一个参数里面以数组的形式呈现。
方案2:用Promise实现
在promise里面加settimeout,超过时间就reject。
promise-timer.js
模块调用方法:
这种方案要求nodejs版本高于5.0,支持Promise。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
Node.js 8 中的 util.promisify的详解 Node.js8于上个月月底正式发布,带来了很多新特性。其中比较值得注意的,便有util.promisify()这个方法。util.promisify()虽然Promise已经普及,但是Node.js里仍
详解nodejs模板引擎制作 关于模板,我倒是用过了不少。最开始要数Java的JSP了,然后接触了PHP的smarty,再就是Python的jinja2,Django内置模板,现在刚开始看Nodejs,也发现了不少类似
详解Nodejs之npm&package.json 一直以来,作为前端开发,在公司都是先写好页面,然后再跟后端合作,将数据填入前端页面中,但是偶尔自己闲来无事,也会看一些框架什么的,然
标签: node 回调函数
本文链接地址:https://www.jiuchutong.com/biancheng/382097.html 转载请保留说明!友情链接: 武汉网站建设