【问题标题】:@firebase/firestore: Firestore (5.0.4): Could not reach Cloud Firestore backend. Backend didn't respond within 10 seconds@firebase/firestore:Firestore (5.0.4):无法访问 Cloud Firestore 后端。后端在 10 秒内没有响应
【发布时间】:2018-11-13 10:17:46
【问题描述】:

我正在开发一个 Angular 6 项目。这是我使用--prod 构建时遇到的错误 标记,托管并运行。 我已经坐这个很久了。最初认为这可能是firestore包的问题,​​我等了。 但是现在更新到firestore 5.0.4,问题依旧存在。

[2018-06-04T06:11:47.859Z] @firebase/firestore:Firestore (5.0.4):无法访问 Cloud Firestore 后端。后端在 10 秒内没有响应。

这通常表示您的设备目前没有健康的互联网连接。客户端将在离线模式下运行,直到能够成功连接到后端。

app.module.ts

Imports: [
    AngularFireModule.initializeApp(environment.firebaseConfig),
    AngularFirestoreModule
]

app.component.ts

constructor(public afAuth: AngularFireAuth,
          private afs: AngularFirestore,
          private db: AngularFireDatabase) {
    this._currentUser = this.afAuth.authState
      .pipe(
        switchMap((user: any) => {
           if (user) {
            console.log(user);
            return this.afs.collection('users').doc<User>(user.uid).valueChanges();
           } else {
             return Observable.create(null);
           }
        })
      );
}

仅供参考:身份验证仍然有效。

依赖 火力基地 5.0.4 angularfire2 5.0.0-rc.10

【问题讨论】:

标签: angular firebase google-cloud-firestore


【解决方案1】:

您应该在 Firebase 控制台中启用 Firestore。执行以下步骤:

  1. 打开Firebase Console,打开或新建项目。

  2. 数据库 部分,点击 Cloud 的 Get Started 按钮 Firestore.

  3. 选择您的 Cloud Firestore 安全规则的启动模式:测试模式锁定模式

  4. 点击启用。

Cloud Firestore 和 App Engine:您不能在同一个项目中同时使用 Cloud Firestore 和 Cloud Datastore,这可能会影响使用 App Engine 的应用。尝试将 Cloud Firestore 与其他项目一起使用。 创建 Cloud Firestore 项目时,它还会启用 Cloud API Manager 中的 API。

【讨论】:

  • 你是我的救星。谢谢。这对我有帮助。
  • 我会试试这个,我在同一个项目中有 RTDB 和 firestore
【解决方案2】:

我的 Kaspersky 防病毒软件AdBlock Chrome 插件

出现问题

可能的问题:

  • 网速慢
  • 防病毒/防火墙相关问题(阻塞)
  • AdBlocker 问题(也被阻止)

【讨论】:

  • 谢谢。卡巴斯基正在为我屏蔽火库。禁用卡巴斯基后,问题得到解决。在存在相同问题的 4 个运行卡巴斯基的桌面上进行了测试。
  • 感谢防病毒/防火墙相关问题(阻塞)
【解决方案3】:

这可能会有所帮助:)

仅导入 AngularFirestoreModule,即使您正在使用其他模块,例如 AngularFireStorageAngularFireDatabase

不知道为什么,但我在许多项目中都使用过这种方法,没有任何问题;)

// Angular Fire Modules in my projects using auth, firestore, realtime db, & storage

AngularFireModule.initializeApp(environment.firebaseConfig),
AngularFireAuthModule,
AngularFirestoreModule,

【讨论】:

    【解决方案4】:

    我在开发和生产中都随机得到了这个,这为我解决了这个问题。 将此设置为真: https://firebase.google.com/docs/reference/js/firebase.firestore.Settings#optional-experimentalautodetectlongpolling

    您至少需要 7.24.0 版的 JS SDK。

    https://firebase.google.com/support/release-notes/js#cloud-firestore_13

    以下是使用 AngularFire 的方法: 在 app.module.ts(或其他导入 AngularFire 的模块)中。

     providers: [
        { provide: FirestoreSettingsToken, useValue: { experimentalAutoDetectLongPolling: true } }
    

    【讨论】:

      【解决方案5】:

      就我而言,我只是将专用网络更改为公共网络

      • 打开设置窗口设置
      • 点击网络和共享或检查您的网络是否私人更改为公共可能会解决您的问题

      windows 10 network and sharing

      【讨论】:

      • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 - From Review
      猜你喜欢
      • 2021-02-20
      • 2021-10-21
      • 2021-08-23
      • 2022-08-20
      • 2021-08-13
      • 2022-08-04
      • 2019-02-07
      • 2020-09-29
      相关资源
      最近更新 更多