2017-03-05 7 views
3

내가 잘못하고있는 것을 얻지 못합니다. 토큰 만료 시간을 설정할 수 없습니다.Laravel Passport 토큰 수명

<?php 

namespace App\Providers; 

class AuthServiceProvider extends ServiceProvider 
{ 
    public function boot() 
    { 
     $this->registerPolicies(); 

     Passport::tokensExpireIn(Carbon::now()->addDays(1)); 
     Passport::refreshTokensExpireIn(Carbon::now()->addDays(30)); 
    } 
} 

하지만이 같은 예를 들어, $user->createToken()를 호출 할 때 :

<?php 
// as a demo 
namespace App\Http\Middleware; 

class ParseSpecialToken 
{ 
    public function handle($request, Closure $next) 
    { 
     $user = User::find(1); 
     $accessToken = $user->createToken('Some token')->accessToken; 
     $request->headers->add(['Authorization' => 'Bearer '. $accessToken]); 

     return $next($request); 
    } 
} 

토큰 만료 여전히 1 년, 아니 1 일입니다. 왜? 엑스 트 타임을 바꾸는 방법?

$tokenResult = $user->createToken('Personal Access Token'); 
$token = $tokenResult->token; 
$token->expires_at = 
     Carbon::now()->addDays(env('PERSONAL_ACCESS_TOKEN_EXPIRY__DAYS')); 

$token->save(); 

답변

0

아, 개인 토큰은 항상 오래 지속하고이 구성 할 수 없습니다 :(

0

이 작업을 수행 할 수 파악 만료 날짜는 어떤 요청에서도 확인되지 않으므로 개인 토큰에 대한 유효한 옵션이 아닌 것 같습니다.

+0

'expir es_at '값은 참조를위한 것입니다. 만기 시간 소인은 JWT 토큰으로 인 코드됩니다. 이것은 효과가 없을 것입니다. –

0

당신이 다음

$token->expires_at = 
     Carbon::now()->addDays(env('PERSONAL_ACCESS_TOKEN_EXPIRY__DAYS')); 

을 할 경우 :