Express.js HTTP 请求超时
我想知道是否有人可以告诉我使用express时默认的HTTP请求超时是多少。
我的意思是:当浏览器或服务器手动关闭连接时,Express / Node.js 服务器在处理 http 请求多少秒后会关闭连接?
如何更改单个路由的超时?我想将其设置为15分钟左右,用于特殊的音频转换路线。
多谢。
汤姆
I was wondering if anyone could tell me what the default HTTP request timeout is when using express.
What I mean by this is: after how many seconds of dealing with a http request will the Express / Node.js server close the connection, when the browser nor server closed the connection manually?
How do I alter this timeout for a single route? I would like to set it to about 15 minutes for a special audio conversion route.
Thanks a lot.
Tom
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
req.connection.setTimeout(ms);
似乎是在 Node.js 中设置 HTTP 服务器的请求超时。req.connection.setTimeout(ms);
appears to set the request timeout for a HTTP server in Node.js.req.connection.setTimeout(ms);
可能是一个坏主意,因为可以通过同一个套接字发送多个请求。尝试 connect-timeout 或使用此:
req.connection.setTimeout(ms);
might be a bad idea since multiple requests can be sent over the same socket.Try connect-timeout or use this:
Node v0.9+ 中的默认请求超时为 2 分钟。这就是快递所使用的。
您可以使用以下方法增加单个路由的值:
The default request timeout in Node v0.9+ is 2 minutes. That is what express uses.
You can increase it for a single route using:
连接超时或任何其他通常不起作用。
总是有效的方法是在 nginx 域/子域级别设置超时,如下所示:
connect-timeout or any other generally don't work.
What always works is setting the timeout in nginx domain/subdomain level like this: