标签: jquery ajax node.js http express
我有一个小API,可根据请求运行子进程,并以最终输出响应。处理可能需要5-10-30分钟,没关系。但是Express会在一段时间后丢弃连接并记录日志 POST /api/v1/check - - ms - -即使子进程的输出仍在处理中,它也永远不会返回给客户端。
POST /api/v1/check - - ms - -
使用jQuery进行请求。
我该如何正常工作?
感谢。
答案 0 :(得分:2)
可能是浏览器超时连接。您可以在使用jQuery发出ajax请求时设置客户端的超时值。
如here所述的jQuery timeout参数可以设置为您选择的时间。
timeout
还有一些方法可以让服务器运回一小段虚拟响应(在实际响应之前)以使浏览器不会超时连接,但在这种情况下,如果您控制客户端,则更容易只需更改其超时值。
服务器端,您可以通过在服务器上设置超时值来控制传入连接何时超时。这在http模块的文档中描述为here。
http