У меня есть конечная точка, которая выдает токен JWT:
/getJwt
token: {
"access_token": "kjhfdhglkfhjkjfhgkjfghdkjhgkjdsgfkjhdfkjgkjhfujksfknbvckjfhdbncvujkdhgvbnfjkdghnbv",
"expires_in": 2592000, // this is equal to 30 days - I dont have information when it is generated
"token_type": "Bearer"
}
И мое приложение имеет различные конечные точки для получения данных, таких как:
/getUser
/getbusinesses
и так далее ...
Все эти конечные точки нуждаются в JWT для доступа.
Если JWT истекает, я получаю следующий ответ:
{
"code": "401",
"message": "Unauthorized",
"errorList": [{
"code": "AUTH0007",
"message": "Malformed JWT token",
"fieldName": "Authorization"
}]
}
code:"AUTH0007"
уникален для истечения срока действия JWT.
Могу ли я сделать запрос на getJwt
только на основании ответа об ошибке, который я получаю из вышеуказанных конечных точек, и повторно отправить неудавшийся запрос, или мне нужно попросить пользователя снова вызвать запрос?
Я открыт для предложений по реализации любого лучшего подхода.
Я успешно звоню в JWT для каждого запроса - я хочу звонить только в случае сбоя.
простой 'запрос GET'
axios.get('/user')
.then((result) => {
res.status(200).json(result.data);
})
.catch((err) => {
if (err.response.status === 401 && err.response.data.errorList.code === "AUTH0007") {
//utill function to get jwt token and update the token in code
// at this point can I send request back with updated token or do I need to ask user to trigger the new req
}
})