javascript - Firebase auth/user-token-expired:抛出的错误在哪里?(JS)
问题描述
背景:
我们正在通过后端的 firebase admin SDK 手动撤销我们的 firebase 刷新令牌。在我们的 Angular 应用程序中,我们使用 firebase.auth() 的 onAuthStateChanged 方法来确定用户是否经过身份验证。对于 onAuthStateChanged 的结果,我们使用方法 .getIdTokenResult() 来获取有关用户的一些元数据并将其存储在本地。
问题:
从我们的后端撤销用户的刷新令牌后,我们等待客户端的 ID 令牌过期(一个小时)。在到期时间附近,我们注意到客户端控制台日志中抛出了未捕获的错误。我们理解这是正常的,因为我们刚刚撤销了刷新令牌,这是由于刷新。问题是我们无法弄清楚在哪里捕获这个异常以及它在哪里被抛出。我们在所有可疑调用(onAuthStateChanged、getIdTokenResult)周围放置了 .catches() 、 try/catch 并提供了错误回调,但我们似乎仍然遇到了异常。
是否有自动尝试刷新令牌的内部进程?如果是这样,我们如何去捕捉这个错误?
我们认为它是内部的,因为堆栈跟踪很难跟踪,导致我们无处可去。
错误详情:
code: auth/user-token-expired
message: The user's credential is no longer valid. The user must sign in again.
这是无意义的堆栈跟踪
解决方案
推荐阅读
- javascript - 如何将此 javascript 片段放入functions.php?
- java - 由于 java.lang.IllegalStateException,应用程序不断崩溃
- cassandra - 从 Cassandra 列族中的冻结集列中获取不同的字段值
- python - 无法在 zsh 中使用活动 venv 运行 Django
- r - stargazer 如何转换模型对象
- python - 我在执行 GeneticAlgo 时遇到了一些错误
- python - How do I run through a list of links one by one and then scrape data using selenium(driver.get)?
- django - 尝试为我的产品显示多个图像
- google-cloud-platform - 如何将 Google 自然语言 API 与 Chatfuel 集成?
- java - Java Spring Security - 授权问题