当客户端/浏览器取消挂起的HTTP请求时,似乎Node和Express仍在继续处理该请求。对于密集型请求,CPU仍然在处理不必要的请求。
有没有一种方法可以要求Node.js/Express终止这些被请求取消的挂起请求?
这变得特别有用,因为自AngularJS 1.5以来,通过在$http/$resource对象上调用$cancelRequest()
很容易取消HTTP请求。
这样的取消可能发生在公开API方法提供自动完成或搜索字段结果时:在输入要自动完成或键入头部的字段时,之前的请求可能会被取消。
全局server.timeout
无法解决问题:1)它是所有公开API方法的全局设置;2)被取消的请求中正在进行的处理未被终止。
"aborted"
事件而不是"close"
事件。参考链接:https://nodejs.org/api/http.html#http_event_aborted - ZachBdestroyed
而不是aborted
- https://nodejs.org/api/http.html#requestdestroyed - Andrew