加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

php – Laravel 4记住我到期时间

发布时间:2020-12-14 19:50:20 所属栏目:大数据 来源:网络整理
导读:我对Laravel很新,有一个关于记住我的功能的问题. 我已经成功启用了“记住我”功能,通过附加第二个参数到Auth ::尝试方法,如此. if (Auth::attempt(array('email' = $email,'password' = $password),true)){ // The user is being remembered...} 如文档中所
我对Laravel很新,有一个关于记住我的功能的问题.

我已经成功启用了“记住我”功能,通过附加第二个参数到Auth ::尝试方法,如此.

if (Auth::attempt(array('email' => $email,'password' => $password),true))
{
    // The user is being remembered...
}

如文档中所述,这可以无限期地记住我,或者直到用户手动注销.

我本来希望在“记住我”功能上设置一个到期日.

看着控制台,我可以看到,启用“记住我”会生成一个remember_ {HASH} cookie.

覆盖此cookie中指定的到期日的最佳方法是将来说一个星期?该cookie当前设置过去的日期,这使得它永远是最后的.

请记住,我必须设置’生命’=> 0在sessions.php中,以便我可以触发记住我的功能,基于用户偏好,所以将其改为一周将不会在我的情况下工作.

谢谢!

我不知道它是否是一个很好的方法,但是如果你绝望设置过期时间记住我,你可以尝试这个,但它对我来说是有效的.

让Laravel的Auth :: atempt($credential,true)做正常的事情,就是把记住我的到期时间设定为5年

我们将在App :: after()方法中更改此内容,因此在您的filters.php文件中找到App :: after()方法并更改Cookie过期时间

App::after(function($request,$response)
{
  if ( Auth::check()){
      $ckname=Auth::getRecallerName(); //Get the name of the cookie,where remember me expiration time is stored
      $ckval=Cookie::get($ckname); //Get the value of the cookie
      return $response->withCookie(Cookie::make($ckname,$ckval,360)); //change the expiration time
  }
});

注意:Cookie :: make(‘name’,’value’,’过期时间’);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读