Нужно обновить токен после того как предыдущий устарел.
Пользуюсь
jwt-auth для генерации токена в laravel.
Я так понял для обновления токена в этой библиотеке есть Middleware который возвращает новый токен в хедере http.
На сервере сделал вот такой роутер:
Route::get('/refresh',['middleware' => ['jwt.auth','jwt.refresh'],'uses'=>'AdminController@showusers']);
На клиента отпровляю ajax запрос :
get('/api/admin/showusers?token=' + Auth.state.api_token)
.then((res) =>{
if(res.data.users){
this.users = res.data.users;
}
})
.catch((err) =>{
if(err.response.status == 401){
get('/api/refresh?token=' + Auth.state.api_token)
.then((res) =>{
console.log(res.response)
})
.catch((err) =>{
console.log(err.response)
})
}
})
}
}
То есть ловлю 401 и делаю ajax чтобы обновить токен, но все время ловлю ошибку авторизации 401 (Unauthorized).
Я понимаю что он мне не дает ответ из за jwt.auth, но если не проверять авторизацию, то получается любой может сбросить токен. Вообщем не понимаю как это сделать:(