我正在尝试调用一个更新浏览器关闭或选项卡关闭数据的服务。问题是服务呼叫使用$http
及其异步,所以根据我的浏览器卸载事件取消该调用并关闭浏览器。我希望浏览器等到我得到该服务调用的响应/错误。如何等待浏览器关闭直至服务器调用完成?
我试过打电话e.preventDefault()
和e.stopPropagation()
但它不工作。
function releaseDocument(e) {
EventService.releaseDocument().then(function() {
window.close();
}, function() {
window.close();
});
}
$window.onbeforeunload = releaseDocument;
$window.onunload = releaseDocument;
任何人都可以帮助或建议任何替代方案来实现相同!?
如果等到标签关闭它在我的思维方式为时已晚。考虑浏览器崩溃或电源故障......事件不会被触发,或者用户当时没有连接。最好先发送它,以便您有机会发现失败的请求 – charlietfl
这只是不可行的。 –
@charlietfl我同意你的意见。它适用于这种情况。现在只想手动处理浏览器关闭。 –