【问题标题】:Laravel5.1 Logout when browser is close using javascript使用javascript关闭浏览器时Laravel5.1注销
【发布时间】:2016-08-14 09:24:07
【问题描述】:

如何使用 javascript 检测浏览器是否关闭。我还没有找到任何使用 laravel 的解决方案。所以现在我正在使用 jquery ajax 请求在窗口关闭之前注销。为此,我正在使用-

function windowUnloaded() {

    var unloaded = false;
    $(window).on('beforeunload', unload);
    function unload(){      
        if(!unloaded){
            $('body').css('cursor','wait');
            $.ajax({
                type: 'get',
                async: false,
                url: '/logout',
                success:function(){ 
                    unloaded = true; 
                    $('body').css('cursor','default');
                },
                timeout: 5000
            });
        }
    }
}

这仅在我刷新页面时有效。但是当浏览器关闭时我想要它。有人可以告诉我我错在哪里,或者是否有其他更好的解决方案。提前致谢。

【问题讨论】:

    标签: jquery ajax laravel-5.1


    【解决方案1】:

    所以您想在浏览器关闭时注销用户?为什么不在config/session.php 文件中将expire_on_close 设置为true 而不是false

    该文件的文档中已经明确表示:

    /*
     |--------------------------------------------------------------------------
     | Session Lifetime
     |--------------------------------------------------------------------------
     |
     | Here you may specify the number of minutes that you wish the session
     | to be allowed to remain idle before it expires. If you want them
     | to immediately expire on the browser closing, set that option.
     |
     */
    
     'lifetime' => 120,
    
     'expire_on_close' => false,
    

    expire_on_close 设置为true 将在浏览器关闭时使会话失效并自动注销用户。

    【讨论】:

    • 谢谢@Saiyan。我也试过了。但它不适用于铬。这就是我使用 javascript 的原因。
    猜你喜欢
    • 2012-12-04
    • 2020-10-23
    • 2017-01-05
    • 1970-01-01
    • 2017-12-28
    • 1970-01-01
    • 2013-11-26
    • 2015-08-22
    • 2017-01-19
    相关资源
    最近更新 更多