Срок действия токена аутентификации Laravel jwt истек, token_invalid

У меня проблема с истечением срока действия токена JWT. Вот ситуация:

У меня API написан на laravel как один проект. Этот API использует другой проект laravel (клиент). Но когда я пытаюсь войти в систему, все в порядке, но потом я начал понимать, что после TTL (60 минут) (время жизни) проходит, а затем, когда я пытаюсь получить пользовательские ресурсы (что требует входа пользователя) Я получаю ответ об ошибке json {«error» => «token_expired»}.

Это часть кода, где я использую промежуточное ПО jwt.auth:

Route::group(['middleware' => 'jwt.auth'], function () {
Route::get('account/getUserDetails', 'Api\AccountController@getUserDetails');
});

Я запутался, почему токен не обновляется автоматически, мне нужно явно указать где-то, чтобы обновить токен, я так не думаю?

«Refresh_ttl» => 20160, в файле jwt.php. Конечная точка выглядит так:

public function getUserDetails(Request $request)
{

try {
if (! $user = JWTAuth::parseToken()->authenticate()) {

return response()->json(['user_not_found'], 404);
}

} catch (Tymon\JWTAuth\Exceptions\TokenExpiredException $e) {

$refreshed = JWTAuth::refresh(JWTAuth::getToken());
$user = JWTAuth::setToken($refreshed)->toUser();
return $this->response->withArray(['token' => $refreshed]);
} catch (Tymon\JWTAuth\Exceptions\TokenInvalidException $e) {

return response()->json(['token_invalid'], $e->getStatusCode());

} catch (Tymon\JWTAuth\Exceptions\JWTException $e) {

return response()->json(['token_absent'], $e->getStatusCode());

}

return $user;
}

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]