如何更改访问令牌 Laravel Passport 的到期日期
How to change expiration date of access token Laravel Passport
我正在尝试更改访问令牌Laravel护照的到期日期。
这是我尝试过的方法:
AuthServiceProvider
public function boot(){
$this->registerPolicies();
Passport::routes();
Passport::tokensExpireIn(Carbon::now()->addDays(1));
Passport::refreshTokensExpireIn(Carbon::now()->addDays(2));
Passport::personalAccessTokensExpireIn(Carbon::now()->addMonths(1));
}
用户控制器
public function login() {
$credentials = [
'email' => request('email'),
'password' => request('password')
];
if (Auth::attempt($credentials)) {
$success['token'] = Auth::user()->createToken('MyApp')->accessToken;
$success['name'] = Auth::user()->name;
return response()->json(['success' => $success]);
}
return response()->json(['error' => 'Unauthorized'], 401);
}
但是没有用。数据库中 expires_at
字段的过期日期没有改变,默认情况下仍然是一年。
我正在尝试这样做,因为我想在访问令牌过期时重定向到登录表单。我该怎么做?
我也不确定刷新令牌会发生什么,它会 return 另一个访问令牌并且用户不需要授权吗?
您正在创建属于用户的个人访问令牌。
个人访问令牌的默认有效期为 1 年。
查看您的代码,我很确定这个命令应该可以完成工作:
Passport::personalAccessTokensExpireIn(Carbon::now()->addMonths(1));
在获取令牌时仔细检查数据库中的 expire_at
列和响应中的 expires_in
值。它显示令牌存在的秒数。
我正在尝试更改访问令牌Laravel护照的到期日期。
这是我尝试过的方法:
AuthServiceProvider
public function boot(){
$this->registerPolicies();
Passport::routes();
Passport::tokensExpireIn(Carbon::now()->addDays(1));
Passport::refreshTokensExpireIn(Carbon::now()->addDays(2));
Passport::personalAccessTokensExpireIn(Carbon::now()->addMonths(1));
}
用户控制器
public function login() {
$credentials = [
'email' => request('email'),
'password' => request('password')
];
if (Auth::attempt($credentials)) {
$success['token'] = Auth::user()->createToken('MyApp')->accessToken;
$success['name'] = Auth::user()->name;
return response()->json(['success' => $success]);
}
return response()->json(['error' => 'Unauthorized'], 401);
}
但是没有用。数据库中 expires_at
字段的过期日期没有改变,默认情况下仍然是一年。
我正在尝试这样做,因为我想在访问令牌过期时重定向到登录表单。我该怎么做?
我也不确定刷新令牌会发生什么,它会 return 另一个访问令牌并且用户不需要授权吗?
您正在创建属于用户的个人访问令牌。
个人访问令牌的默认有效期为 1 年。
查看您的代码,我很确定这个命令应该可以完成工作:
Passport::personalAccessTokensExpireIn(Carbon::now()->addMonths(1));
在获取令牌时仔细检查数据库中的 expire_at
列和响应中的 expires_in
值。它显示令牌存在的秒数。