Использование JWT в Django - автоматическое обновление токена после окончания 'ACCESS_TOKEN_LIFETIME'
Я хочу реализовать simpleJWT в API таким образом, чтобы сгенерированный токен отправлялся в API запрос и если время жизни JWT истекает, то токен автоматически обновляется и с этого момента в API запросе должен использоваться новый токен. Мой код customrequest --->
def _get_jwt(self):
refresh = RefreshToken.for_user(self.user)
return {
'refresh': str(refresh),
'access': str(refresh.access_token),
}
def _get_authorization_headers(self):
"""
This function returns authorization headers including token
Which is to be passed in post method
Returns:
This function returns dictionary that contains Authorization (Token) and content-type
"""
if self.jwt:
# access_token =
headers = {"Authorization": "Bearer {}".format(self._get_jwt()["access"]), "content-type": "application/json"}
else:
headers = {"Authorization": "Token {}".format(self._get_token(self.token)), "content-type": "application/json"}
return headers
def post(self, url=None, data=None):
"""
This function sends post request to the url
Params:
url = endpoint where we want to send post request
data = data to be sent on that endpoint
"""
url = self.url + url
headers = self._get_authorization_headers()
result = requests.post(url, data, headers=headers)
return result.text
в настоящее время я использую этот подход, но проблема в том, что токен, который генерируется в первый раз, тот же самый токен находится в заголовках даже после того, как время жизни JWT истекает через 5 минут('ACCESS_TOKEN_LIFETIME': timedelta(minutes=5) ), и я хочу использовать новый токен после каждого истечения срока действия токена.