模拟器(来自 CLI)和项目 GUI 中的 Firebase 资源位置不同

Firebase resource location different in emulator (from CLI) and project GUI

我有一个项目已经使用 firebase 存储、auth 和 firestore 很长一段时间了,现在我第一次添加功能。

我已经通过 运行 在我的项目目录中 firebase init emulatorfirebase init functions 添加了一个模拟器和函数到代码库,并且一切 运行 都很好。

但我注意到资源位置 us-central1 与我项目的资源位置 eur3/europe-west 不匹配。

在随附的屏幕截图中,您可以从我的终端看到当前项目设置为 europe/west,但该功能已从 us-central1 的模拟器中初始化。据我了解,这会导致相当严重的性能问题。

这只是模拟器的情况吗?或者有什么方法可以确保当我的函数实际托管在 firebase 中时,它们将位于正确的资源位置?

如果您不打算使用默认区域,您可以在编写函数时声明该区域:

exports.exampleFunction = functions.region("europe-west1").https.onRequest((req, res) => {
  res.redirect("https://www.google.com");
});