node.js - 需要减少expressjs中路由的超时时间

标签 node.js express timeout

在 expressjs 中有一种方法可以设置每个路由的超时限制。

我有一些路线可能需要 30-45 秒才能处理(大量任务)

然后是其他路由,如果它花费的时间超过 5 秒,我希望它超时。

我想我想问的是有没有办法全局设置请求的超时限制,有没有办法在路由上单独设置。

最佳答案

使用内置的连接超时中间件:

http://www.senchalabs.org/connect/timeout.html

var connectTimeout = require('connect-timeout');

var timeout = connectTimeout({ time: 10000 });
var longTimeout = connectTimeout({ time: 45000 });

app.use(timeout); // you can set a global timeout value
app.get('/some/route', longTimeout, yourHandler); // or you can set per-route timeouts

关于node.js - 需要减少expressjs中路由的超时时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14408573/

相关文章:

javascript - Node 'readline' 模块没有 'end' 事件 - 当没有更多行时我该怎么做?

node.js - Fastify Typescript 请求查询

node.js - 在 Windows 中安装 Cordova 时出现错误

windows - 当 async_write() 操作永远不会结束并且涉及一个链时会发生什么?

node.js - 单线程同步和异步混淆

css - url中有参数时express stylesheet 404错误

node.js - Typescript编译错误: Property 'bodyParser' does not exist on type 'typeof e'

angular - ionic 与 SSR 实现

terminal - icmp_seq 的请求超时

node.js - setTimeout - JavaScript 堆内存不足