gpt4 book ai didi

javascript - 在选项卡关闭时清除 PHP session ?

转载 作者:行者123 更新时间:2023-12-03 02:55:04 24 4
gpt4 key购买 nike

每次用户关闭其选项卡时,我都会尝试注销。我看过所有类似的问题,但我仍然没有找到任何有效的方法。

这是我所做的:

<script type="text/javascript">
$(document).ready(function() {
$(window).bind("beforeunload", function() {
confirm("Do you really want to logout?") && $.ajax({
type: "GET",
url: "/admin/account/logout"
})
})
});
</script>

我已经在没有confirm的情况下尝试过,但仍然不起作用。我绝对确信这是可以做到的,因为我的银行网站具有相同的功能。

编辑:如果没有 confirm 它确实会触发注销ajax,但即使当我浏览页面时也是如此。这让我想起,我的银行网站使用了类似 AngularJS 的东西,这并不完全是一个真正的链接浏览系统,对吧?也许这就是它在那里起作用的原因?

最佳答案

您的代码的问题是请求是异步执行的,并随着窗口的关闭而终止。如果将 async 参数设置为 false,则 ajax 请求将在选项卡/窗口关闭之前执行。

不幸的是,这并不能解决您的问题,因为每次您要离开页面时都会触发此事件。如果您只是想破解一个解决方案,您可以使用此处提到的方法:https://stackoverflow.com/a/44057659/5173095 - 在服务器端触发超时,如果超时后用户没有再次发出请求,则注销用户。

关于javascript - 在选项卡关闭时清除 PHP session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47669846/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com