我正在尝试使用来自
firebase
的电话身份验证,但现在收到此错误。
由于缺少初始状态而无法处理请求。如果浏览器会话存储无法访问或意外清除,则可能会发生这种情况。
这在一周前还有效,现在不再有效。
我通过使用 SHA2 向 SafetyNet 注册我的应用程序解决了这个问题。为此,请按照以下步骤操作:
顺便说一句,此错误发生在我的一台设备上,但没有发生在另一台设备上。我也搜索了这个错误,但没有人解决这个问题,包括此页面。当我发送电话号码时获取 OTP 时,我使用 firebase 进行电话身份验证时会发生这种情况。如果您没有 SafetyNet,该应用程序会尝试将您重定向到浏览器以进行 Recaptcha 验证。因此,没有 SafetyNet 将导致您的应用程序始终重定向至 Recaptcha,这有时会导致错误。因此,要解决此问题,请向 Safety Net 注册您的应用程序。要了解这一点,请阅读本文档。 https://firebase.google.com/docs/auth/android/phone-auth?authuser=0 关注 2. 启用应用程序验证,您会发现 recaptcha 只是 SafetyNet 的替代方案。
我在使用 iPhone 网络应用程序时遇到了这个问题。我进入“设置”->“Safari”并禁用“防止跨站点跟踪”。
Ionic/Angular/Capacitor 应用程序上也有它。即 Android 和 Chrome。使用 Microsoft 登录进行 Firebase 身份验证。
所以我已经清除了Android设备上的所有chrome浏览器数据,然后就没有问题了。即现在工作正常。
更多解决方法:https://github.com/firebase/firebase-js-sdk/issues/4256
Build
部分并单击应用程序检查SafetyNet
SafetyNet
已弃用,很快就会被删除,您应该激活 Play Integrity
。快乐编码!
如果您在 Firefox 中看到此情况,则可能是此处描述的问题: https://firebase.google.com/docs/auth/android/phone-auth?authuser=0#troubleshooting
当 reCAPTCHA 流程成功完成但未将用户重定向回本机应用程序时,可能会发生这种情况。如果发生这种情况,用户将被重定向到后备 URL
。在 Firefox 浏览器上,默认情况下禁用打开本机应用程序链接。如果您在 Firefox 上看到上述错误,请按照设置 Firefox for Android 以在本机应用程序中打开链接中的步骤启用打开应用程序链接。PROJECT_ID.firebaseapp.com/__/auth/handler