【发布时间】:2013-07-05 15:08:42
【问题描述】:
我有一个 JavaScript 应用程序,它可以允许用户向我的 Tomcat 服务器发出多个重叠的只读请求,这样以后的请求应该取消并覆盖任何早期的请求。在收到请求之前,我可以禁用所有客户端控件,但我宁愿让它们保持启用状态,让用户随时点击,然后取消之前的请求。
我想做的是取消除最新请求之外的所有请求,这样我的服务器就不会浪费时间完成永远不会看到的请求。我希望服务器中止它为该请求运行的线程,以减少服务器资源。
最好的方法是什么?
【问题讨论】:
-
您不能在服务器上执行此操作 - 而应在客户端执行此操作。如果前一个呼叫尚未完成,则在发起新呼叫时使用 AJAX 并取消上一个呼叫。见this question
-
@AleksG 感谢您的快速回复!那里有很好的链接。正如您所说,您不能在服务器上执行此操作。但我不太容易接受“不能”。