在JWT Auth Laravel中ttl未过期
我需要令牌不过期。。在JWT Auth Laravel中ttl未过期,laravel,authentication,token,jwt,Laravel,Authentication,Token,Jwt,我需要令牌不过期。。 它不起作用,总是返回“error”:“token expired”这个问题很模糊,因为我们不知道使用哪个库/组件生成Jot,所以我们无法知道过期声明的管理方式。 一般来说,为了获得未过期的Jot,此类声明(exp、ttl或refresh\u ttl)不应成为有效负载的一部分 以下令牌将在3600秒后过期 'ttl' => null, 'refresh_ttl' => null, 以下令牌永远不会过期 { 'iss': 'my-service'
它不起作用,总是返回“error”:“token expired”这个问题很模糊,因为我们不知道使用哪个库/组件生成Jot,所以我们无法知道过期声明的管理方式。 一般来说,为了获得未过期的Jot,此类声明(
exp
、ttl
或refresh\u ttl
)不应成为有效负载的一部分
以下令牌将在3600秒后过期
'ttl' => null,
'refresh_ttl' => null,
以下令牌永远不会过期
{
'iss': 'my-service'
'aud': 'your-service'
'sub': 'my-client'
'ttl': 3600
}
在文件vendor/tymon/jwt auth/config/config.php中,更改行
{
'iss': 'my-service'
'aud': 'your-service'
'sub': 'my-client'
}
顺便
'ttl' => env('JWT_TTL', 60),
同时删除此行中的exp
'ttl' => env('JWT_TTL', null),
如果您不想有条件地使令牌过期,则适用于my
在JWTAuth中不使登录过期的步骤:
jwt.php
(如果不可用,则在project==>'ttl'=>env('JWT_ttl',60),
到
'ttl'=>env('JWT_ttl',null),
'required_claims'=>['iss','iat','exp','nbf','sub','jti',],
您好,欢迎使用堆栈溢出。你的问题似乎有点含糊。你想完成什么?你期待什么样的行为?您尝试了什么?您尝试过将它们设置为0
?您好,我需要令牌未过期此功能不可用。要么提供很长的时间,即30*60*60,要么使用刷新令牌。遗憾的是,这也将过期。@Sameer Shaikh:为什么不可能?没有任何东西阻止我们创建一个非常长的生命周期JWT或一个不会过期的JWT。您不应该更改供应商目录中的任何内容
'required_claims' => [
'iss',
'iat',
'exp',
'nbf',
'sub',
'jti',
],
if ( // your condition ) {
$this->guard()->setTTL(null);
}