最近我决定在我的 Laravel 4 应用程序中添加“记住我”功能。找到了合适的语法方法:
Auth::attempt(array $credentials = array(), $remember = false)
这是为满足我的需求而采用的,如下所示:
Auth::attempt($userdata, Input::has('remember'))
应用程序保持身份验证会话,即使在浏览器关闭后用户也被验证。
虽然,我发现现在 Laravel 始终保持用户身份验证,无论“记住”复选标记是什么状态。
我试图这样做:
Auth::attempt($userdata, false)
和
Auth::attempt($userdata,)
用户仍然通过浏览器会话进行身份验证!!!现在,由于Auth::attempt($userdata)
没有保留 auth 会话,我觉得每当Auth::attempt
方法中有第二个参数的迹象时,Laravel 自动将其假定为“真”。谁能澄清一下?
编辑:为了让每个人都非常清楚,我将列出重新创建此行为的步骤:
- 退出应用程序
Auth::logout();
- 再次登录
Auth::attempt($userdata, false)
- 关闭并打开浏览器
- 转到应用程序网址。
- 应用程序已加载验证
这是我在这里的第一个问题,所以请耐心等待我:)