Auth0 - отключить кеш профиля пользователя
Как отключить кеш профиля пользователя в Auth0?
Мне удалось обновить профиль пользователя user_metadata. Но проблема в том, что Auth0 кэширует профиль пользователя, поэтому это обновление будет видно только после того, как пользователь вышел из системы, а затем снова войдет в систему. Это проблема, потому что я не хочу заставлять пользователей входить в систему каждый раз, когда они открывают мое приложение. Я хочу, чтобы приложение запомнило сеанс, но по-прежнему запрашивало данные userinfo при открытии приложения. Кэширование делает это невозможным.
Очевидно, это связано с кешем auth0, как описано в разделе " Профиль пользователя: подробные сведения ".
Однако в том же документе говорится: "Вы можете удалить кэшированный профиль пользователя через панель мониторинга Auth0 или API-интерфейс управления. "Я хочу удалить кэш пользовательской информации (в идеале для конкретного пользователя) при обновлении user_metadata, но мне не удалось найти в API управления какую-либо информацию о том, как удалить кэш пользовательской информации.
1 ответ
Та же проблема обсуждается в этом выпуске Github:https://github.com/auth0/auth0-spa-js/issues/274
Tl;dr: решение этой проблемы путем перезагрузки всего SPA пользователем https://github.com/patricknee
и инженер auth0 дает следующие инструкции: Прямо сейчас, если вы хотите обновить токен идентификатора, вам нужно сначала вызвать getTokenSilently({ignoreCache: true}), чтобы обновить кеш. getIdTokenClaims() просто возвращает то, что ему уже известно о токене, и не обновляет его, как вы заметили.
«Отключить кеш профиля пользователя» заставит пользователя повторно входить в систему при каждом запросе, поэтому я не думаю, что это возможно.