首页 > 解决方案 > Laravel - 记住我没有按预期工作

问题描述

使用 Laravel 5.5,以及 Laravel 内置的认证系统。

对“记住我”选项感到困惑,这是我的记住视图

<div class="col-xs-6">
    <div class="checkbox checkbox-primary" style="margin: 0;">
        <input id="checkbox-remember" type="checkbox" name="remember" {{ old('remember') ? 'checked' : '' }}>
        <label for="checkbox-remember">Remember me</label>
    </div>
</div>

选中后,它会在用户数据库中添加 remember_token 令牌,以便该部分工作。但它似乎什么都不“记得”?所有用户,无论他们是否拥有 remember_me 令牌,如果他们关闭网站/再次打开它,都可以立即访问该网站。所有用户在退出时都需要重新输入他们的电子邮件/密码,并且无论他们是否拥有 remember_me 令牌,remember-me 框都不会被选中。

尝试了文件和 cookie 会话驱动程序。

努力看看它到底记得什么?

标签: laravel

解决方案


Laravel 的记住我功能为选中记住我复选框的用户提供了自动登录。这样,关闭浏览器或终止会话的用户不必再次登录。

与其他网站(或某些浏览器,就此而言)记住凭据并将它们放入登录名的其他网站相反,Laravel 不会这样做。

正如 Laravel 在其文档中所述:

如果您想在您的应用程序中提供“记住我”功能,您可以将布尔值作为第二个参数传递给尝试方法,这将使用户无限期地通过身份验证,或者直到他们手动注销。


推荐阅读