@firebase / firestore:Firestore(5.0.4):无法访问Cloud Firestore后端。后端在10秒内没有响应

时间:2018-06-04 06:26:57

标签: angular firebase google-cloud-firestore

我正在开发一个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);
           }
        })
      );
}

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

依赖关系 firebase 5.0.4 angularfire2 5.0.0-rc.10

5 个答案:

答案 0 :(得分:1)

可能的问题:

  • 互联网连接速度慢
  • 与防病毒/防火墙相关的问题(阻止)
  • AdBlocker问题(也有阻止)

我的卡巴斯基和adBlock Chrome插件出现问题

答案 1 :(得分:0)

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

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

  2. 数据库部分中,单击云的入门按钮 Firestore

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

  4. 点击启用。

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

答案 2 :(得分:0)

这可能有帮助:)

即使您正在使用其他模块(例如 AngularFirestoreModuleAngularFireStorage),也仅导入 AngularFireDatabase

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

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

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

答案 3 :(得分:0)

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

您至少需要 JS SDK 7.24.0 版本。

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

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

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

答案 4 :(得分:-1)

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

  • 打开设置窗口设置
  • 单击网络并共享或检查您的网络(如果是私有的,则更改为公开)可以解决您的问题

windows 10 network and sharing