javascript - 尝试登录时出现 React-native、Firebase 网络错误

标签 javascript reactjs firebase react-native firebase-authentication

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

{
    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.' });
    });
});

对于两者,我得到相同的错误对象。

最佳答案

所以问题是:

这一切都始于这个调试器和设备时间已经漂移了 60 多秒,由于其他与 adb 相关的问题我无法运行 adb shell "date -sdate +%m%d%H%M%Y.%S",在我解决我的 adb 问题后,我运行 adb shell "date -sdate +%m %d%H%M%Y.%S",现在 Firebase 错误是说:如超时,adb(我的电脑)时间比设备 -4 分钟,所以为了解决这个问题,我更改了计算机上的时间,添加了 4 分钟,以便与设备时间匹配。

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

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

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

关于javascript - 尝试登录时出现 React-native、Firebase 网络错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43458184/

相关文章:

javascript - 语法错误: Unexpected Identifier for loop through an array

javascript - style.backgroundColor 不起作用?

javascript - Material Design 设备兼容 DIV 幻灯片 (JS/JQuery/CSS)

javascript - 如何在不不断重新安装的情况下将包装组件传递到 React Router

javascript - 即使未进入映射循环,React也会在array.map上崩溃

ios - 在 Firebase 中保存数组

javascript - 将 div 的宽度设置为没有 width 属性的 div 的 'display width'

javascript - 在 React 中使用映射函数之外的变量

java - 将文件保存到 Firebase 存储和数据库中 - Android

firebase - Firebase Firestore 中是否有任何 whereIn 查询?