javascript Firebase '发生网络错误(如超时、连接中断或无法访问主机),'

twh00eeo  于 2023-02-07  发布在  Java
关注(0)|答案(6)|浏览(259)

我正在尝试为我的数据库客户端编写一些测试,这些测试要求我首先通过Firebase的身份验证。
我让杰斯特做我的测试员。
我的测试看起来像:

it ('should sign in ', async (done) => {
  try {
    await auth.signInWithEmailAndPassword('testabc@test.com', 'testuser');
  } catch (e) {
    console.log(e);
  }
  done();
});

我的firebase应用程序已初始化,并且我已验证API密钥是否正确。
有几个有趣的注意事项是,即使我得到:

'A network error (such as timeout, interrupted connection or unreachable host) has occurred.'

在firebase控制台上,我看到我的测试用户已经登录。镜像:Firebase throws “auth/network-request-failed” on signInAnonymously() while running jest tests
这看起来不像是一个身份验证问题(密码错误/电子邮件错误),因为我尝试以不存在的用户身份登录时遇到了相同的错误。
通过浏览器启动我的应用程序并在输入字段中输入凭据来登录,没有任何问题。
有什么想法吗?

xt0899hw

xt0899hw1#

我有类似的结果时,有代理和/或证书问题阻止的东西。
我会先启用日志记录:firebase.database.enableLogging(true);
然后看看它是怎么说的,如果你看不出是什么阻塞了,我会运行Wireshark,我们可以看到当时发生了什么。

qcbq4gxm

qcbq4gxm2#

这个问题发生时,没有在您的移动的互联网连接活动。我收到了相同的错误,因为我忘了启用我的设备中的网络连接。首先检查您的Android清单文件,以确保您已授予网络权限。在我的情况下,它已经完成。所以我用我的模拟器,然后它开始正常工作。(要进行更彻底的诊断,您可以使用if子句检查Internet连接是否处于活动状态)

mkh04yzy

mkh04yzy3#

1-原因很简单!检查设备是否有互联网连接。2-如果你启用了谷歌服务

dw1jzc5e

dw1jzc5e4#

在我的例子中,它发生在使用Android模拟器时。关闭并重新启动模拟器解决了这个问题

nr9pn0ug

nr9pn0ug5#

在我的情况下,当我改变它的工作

auth.useEmulator('http://localhost:9099')

auth.useEmulator('http://127.0.0.1:9099')

在我玩笑测试中

gcmastyq

gcmastyq6#

我也有同样的问题,只需重新启动您的IDE和模拟器,并确保已连接WiFi。然后再次打开并运行您的应用程序。

相关问题