Если вы позвоните cognitoUser.getSession
из Cognito Javascript SDK, это приведет к обновлению локальных токенов, если они больше не действительны.
Я думаю, у вас есть несколько вариантов:
1) Звоните cognitoUser.getSession
перед каждым вызовом API. Это вызов async
, поэтому убедитесь, что у вас есть результат, прежде чем продолжить вызов API. Если токены действительны, этот звонок будет очень быстрым и недорогим. Если вам нужны новые токены, для обновления токена может потребоваться секунда или две.
2) Сделайте вызов API, и если вы получите ответ 403, позвоните getSession
, и как только у вас будет результат, попробуйте вызов API еще раз. Или, если вызов не так важен, просто обновите токен, установите какой-нибудь счетчик ошибок и, если он произойдет сбой в следующий раз, пометьте его пользователю в этот момент.