Auth0-禁用用户个人资料缓存

时间:2018-10-27 13:38:00

标签: javascript caching auth0

如何在Auth0中禁用用户个人资料缓存?

我已经能够更新用户个人资料user_metadata。但是问题在于,Auth0缓存了用户配置文件,因此只有在用户注销然后再次登录后才能看到此更新。这是一个问题,因为我不想总是强迫用户每次打开我的应用程序时都登录。我希望应用程序记住该会话,但是在应用程序打开时仍然查询userinfo数据。缓存使这不可能。

显然,这是由于“ 用户个人资料:深入详细信息”中记录的auth0缓存。

但是,同一文档指出“您可以通过Auth0信息中心或Management API删除用户的缓存配置文件。”我希望在user_metadata时删除userinfo缓存(最好是针对特定用户)已更新,但是我无法在Management API中找到有关如何删除userinfo缓存的任何信息。

1 个答案:

答案 0 :(得分:1)

在这个 Github 问题中讨论了同样的问题: https://github.com/auth0/auth0-spa-js/issues/274

tl;dr 是: 通过用户 https://github.com/patricknee

重新加载整个 SPA 来解决此问题

并且 auth0 工程师给出了以下说明: 现在,如果要刷新 ID 令牌,则必须先调用 getTokenSilently({ ignoreCache: true }) 来刷新缓存。正如您所观察到的,getIdTokenClaims() 只会返回它已经知道的关于令牌的信息,并且不会刷新它。

“禁用用户配置文件缓存”会强制用户在每次请求时重新登录,所以我认为这是不可能的。