尝试登录时反应本机,Firebase网络错误

Posted

技术标签:

【中文标题】尝试登录时反应本机,Firebase网络错误【英文标题】:React-native, Firebase network error while trying to log in 【发布时间】:2017-09-13 11:12:26 【问题描述】:

我使用 Firebase 遵循了 React-native 登录教程,我使用 create-react-native-app 来轻松开发(我的 package.json),我正在使用 NodeJS v6.10.1,我正在使用 Note 4 Device(4.4. 4),我在 Firebase 控制台中启用了Email/Password 身份验证,出于某种原因,我得到:


    code: "auth/network-request-failed",
    message: "A network error (such as timeout, interrupted connection or unreachable host) has occurred."

我没有忘记使用firebase.initializeApp,我的代码是:

firebase.auth().signInWithEmailAndPassword(email, password)
.catch(e0 => 
  console.log(e0);
  firebase.auth().createUserWithEmailAndPassword(email, password)
    .catch(e1 => 
      console.log(e1);
      this.setState( error: 'Authentication Failed.' );
    );
);

对于这两个我得到相同的错误对象。

【问题讨论】:

现在再试一次.. 我已经多次看到随机网络错误会在一段时间后消失 @ChristopherRivera 我试过了,不幸的是同样的错误。 【参考方案1】:

我有同样的错误。 在我的情况下,它是由 Firebase -> Authentication 中同一电子邮件的多个标识符引起的。 不知道为什么我对同一封电子邮件有多个记录,但在删除所有记录后再次登录。问题已解决。

【讨论】:

【参考方案2】:

对于在 android 设备模拟器(在 windows 上)上使用 expo 运行的 react-native 项目,我遇到了同样的错误。

我知道这听起来很奇怪,但在我的情况下,我在通过手机热点使用互联网时遇到了这个错误。当我切换到正常的 Wi-Fi 互联网连接时,错误消失了。

希望这会有所帮助。

【讨论】:

【参考方案3】:

所以问题是:

这一切都从这个Debugger and device times have drifted by more than 60s开始,由于其他与adb相关的问题,我无法运行adb shell "date -sdate +%m%d%H%M%Y.%S",在我修复了我的adb 问题我运行adb shell "date -sdate +%m%d%H%M%Y.%S",现在 Firebase 错误说:such as timeout,adb(我的电脑)时间比设备 -4 分钟,为了解决这个问题,我更改了计算机上的时间,增加了 4 分钟,以便与设备时间匹配。

我认为是问题所在,我不是网络专家,所以如果出现问题,请如果有人可以修正我的一些假设:

为了解释,我只是使用了虚幻的东西(reqTimestamp,...),但这个概念是有效的(我希望):

设备使用时间戳和超时对请求进行签名,例如reqTimestamp=22:16, reqTimeout=22:17,我的设备是通过我的wifi连接的,所以当调制解调器连接时对于我的计算机,对我的计算机或调制解调器内部进行基本检查,例如:if(reqTimeout > timeNow) reject,可能会阻止请求甚至离开我的网络,因此 Firebase 会发出此关于网络问题的一般错误。

【讨论】:

我有同样的错误但我不明白这个解决方案中的任何内容..请澄清。谢谢 @henrybbosa 首先,如果你可以运行adb shell "date -s date +%m%d%H%M%Y.%S,就我而言,我必须修复一个不相关的错误,它不会让我运行上面的行,在我解决了问题之后,我能够运行上面的行,它部分解决了我的问题,因为我收到了 such as timeout(我假设它是文本的一部分)错误,以解决我更改机器上的时间的问题,正如你所看到的,我已经说过我的计算距离设备有 -4 分钟,如果你不明白,请告诉我。

以上是关于尝试登录时反应本机,Firebase网络错误的主要内容,如果未能解决你的问题,请参考以下文章

反应本机 Firebase 身份验证错误

开发服务器返回响应错误代码:通过安装firebase连接到firebase时反应本机500

iOS中的Firebase注册错误通过本机反应

您如何使用面部 ID 登录以使用 Firebase 做出本机反应?

firebase.initializeApp 不是本机反应的功能

添加正文时在 POST 请求中反应本机网络错误