Laravel Passport令牌过期方法不起作用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel Passport令牌过期方法不起作用相关的知识,希望对你有一定的参考价值。

我使用护照对我的API进行身份验证我运行此命令来安装护照:

php artisan passport:install --force

并使用以下代码生成令牌:

$objToken = $user->createToken('Token');
$strToken = $objToken->accessToken;
$expiration = $objToken->token->expires_at->diffForHumans();

return response()->json([
     token' => $strToken,
     'ExpireTime' => $expiration,
], 200);

我发现我的令牌寿命为一年,我只想将expire_at列设置为1小时我阅读了官方文档,并将以下代码添加到AuthServiceProvider:

Passport::tokensExpireIn(now()->addDays(15));
Passport::refreshTokensExpireIn(now()->addDays(30));

但是这些代码不起作用,当我登录expire_at时,仍然是一年请帮助我更改令牌的到期时间。thakns很多:)

答案

您正在尝试创建个人访问令牌

// Passport::tokensExpireIn(now()->addDays(15));
// Passport::refreshTokensExpireIn(now()->addDays(30));


# Get or set when personal access tokens expire.
Passport::personalAccessTokensExpireIn(now()->addHour(1));

结果:

array:2 [
  "token" => "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...."
  "ExpireTime" => "59 minutes from now"
]

以上是关于Laravel Passport令牌过期方法不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Laravel Passport 密码授予刷新令牌

Laravel 护照延长访问令牌过期时间

Passport-jwt 令牌过期

Laravel 通过 Passport 实现 API 请求认证:隐式授权令牌

Laravel 通过 Passport 实现 API 请求认证:令牌作用域详解

Laravel Passport:手动创建访问令牌