Firestore模拟器-在自定义端口上连接

时间:2020-03-08 15:23:47

标签: firebase google-cloud-firestore firebase-cli

the firestore documentation中所述,我可以通过添加以下部分来在firestore.json中设置firestore模拟器的端口:

  "emulators": {
    "firestore": {
      "port": 1234
    }
  }

但是我该如何连接呢?

是否将initializeTestApp和initializeAdminApp的端口作为参数?

2 个答案:

答案 0 :(得分:0)

请参阅:

// Initialize your Web app as described in the Get started for Web
// firebaseApp previously initialized using firebase.initializeApp().
var db = firebaseApp.firestore();
if (location.hostname === "localhost") {
  // Note that the Firebase Web SDK must connect to the WebChannel port
  db.settings({
    host: "localhost:8081",
    ssl: false
  });
}

您可以尝试以下示例吗?

答案 1 :(得分:0)

我在任何地方的文档中都找不到这个,但是可以通过查看@firebase/rules-unit-testing npm package的源代码来找出来。

您需要做的就是设置FIRESTORE_EMULATOR_HOST环境变量:

FIRESTORE_EMULATOR_HOST=localhost:8181

然后仅按docs中所述使用initializeTestApp() / initializeAdminApp()

(如果您使用的是RealtimeDatabase,似乎还可以使用DATABASE_ADDRESS_ENV环境变量。)