【发布时间】:2026-01-01 07:45:01
【问题描述】:
编辑:本质上是 firebase-emulator 文档的问题。见讨论here。
我正在尝试使用 nodejs 管理 SDK 直接访问在本地模拟器上运行的 Firestore 实例。最小的例子:
// test.js
const admin = require("firebase-admin"); // version 9.1.1
admin.firestore().collection('foo').add({ a: 1 });
然后只需$ node test.js 看看它是否有效。
我能找到的唯一文档是one sentence,它告诉我设置一个环境变量,所以我做了,如下所示:
$ FIRESTORE_EMULATOR_HOST='localhost:1003' node test.js
但我收到一条错误消息 Unable to detect a Project Id in the current environment. 但我 am 在我的文件库项目文件夹中。我错过了什么?我的最终目标是编写单元测试来测试我使用 firestore 的服务器代码。服务器在云函数上运行,目前我能够从可以成功读取/写入本地数据库的测试套件中触发该函数,但这对于编写测试来说太复杂了。
firebase.json:
{
...
"emulators": {
"ui": {
"enabled": true,
"port": 1000
},
"hosting": {
"port": 1001
},
"functions": {
"port": 1002
},
"firestore": {
"port": 1003
}
}
}
(这4个端口我都试过了,都没有用)
【问题讨论】:
标签: firebase google-cloud-firestore