页面关闭时 ajax 失效:原因分析和解决方法
在页面关闭时触发的方法中,有时会遇到 ajax 请求不执行的问题。这可能是由于以下原因引起的:
浏览器关闭时请求中断
浏览器在关闭时会终止所有正在进行的请求。因此,即使你设置了 async: false,ajax 请求也很可能会被中断。
解决方案:
下面是使用 navigator.sendbeacon 方法的示例代码:
(window).on('unload', function() { navigator.sendBeacon('${ctx}/wms/ebPurchaseItem/choiceItem', '{"id":"","caozuo":"clear"}'); });