我想在用户没有手动从应用程序注销时插入注销时间戳,即,如果用户关闭浏览器而没有从系统注销,系统应该在浏览器关闭事件或使用jquery, ajax和php做同样的任何其他解决方案是受欢迎的。我尝试了以下代码:
<script type="text/javascript">
window.onbeforeunload = function() {
$.ajax
({
url: 'logout.php',
data: "",
type: 'post',
success: function()
{
.....
}
});
}
</script>
但窗口。Onbeforeunload函数()每次在webkit浏览器(如chrome)中url更改时都会将我注销,因为它的特征。我需要一些跨浏览器的解决方案。关于这个问题,我在stackoverflow上看到了各种各样的队列,但我找不到任何解决方案来帮助我。
并且我还需要提到,在logout.php中,我使用会话终止代码并在数据库中插入查询以及注销时间戳。
我想建议以下代码ajax调用浏览器关闭。
<script type="text/javascript">
window.onbeforeunload = function() {
var ticketId = $('#ticketId').val();
$.ajax({
url: '/ticket-window-close/'+ticketId,
type: 'GET',
async: false,
timeout: 10000
});
};
</script>