首页 > 解决方案 > 选中记住我复选框时如何设置 Laravel Passport 令牌过期时间

问题描述

尊敬的先生/女士,当我选中 Remember_me 复选框时,该时间令牌将在 1 分钟后过期。

 if ($request->remember_me) {
               $token->expires_at = Carbon::now()->addMinutes(1);
            }

上面的代码不起作用。令牌不会过期。我将在 1 分钟后访问以下路线,我想在令牌时间到期后 1 分钟后阻止对AuthController@checkAuthWorkingOrNot的访问。

    Route::get('demo', 'AuthController@checkAuthWorkingOrNot')->middleware('auth:api');

请先生/女士帮助我,我是 laravel 的新手

标签: phplaravellaravel-5

解决方案


在您的登录控制器中以相同的顺序添加以下代码。

            if ($request->remember_me) {
                Passport::personalAccessTokensExpireIn(now()->addMinutes(3));
            }
            $tokenResult = $user->createToken('Personal Access Token');
            $token = $tokenResult->token;

推荐阅读