如何从 Firebase 托管应用访问特定于环境的 Firebase 函数端点?



我有三个 Firebase 项目,分别代表托管在 Firebase 主机上的开发、暂存和生产环境。每个环境都利用自己部署的 Firebase 函数,如下所示:

  • 开发函数终结点:https://us-central1-my-app-dev.cloudfunctions.net/someFunction
  • 暂存功能终结点:https://us-central1-my-app-staging.cloudfunctions.net/someFunction
  • 生产功能端点:https://us-central1-my-app.cloudfunctions.net/someFunction

我无法弄清楚静态的Firebase托管客户端React应用程序应该如何调用这些函数,因为每个函数的URI端点会根据代码执行的环境而变化。

理想情况下,我可以为每个Firebase Hosting环境设置特定于环境的配置;不幸的是,在Firebase Hosting中执行此操作的唯一方法是从Firebase Functions本身。

如何检索每个 Firebase 函数的特定环境端点?

这里有几个选项。

首先,您可以按照自己喜欢的任何方式配置您的 React 应用程序。 对于每个系统组件(后端、前端)来说,拥有自己的配置不一定是一件坏事。

其次,由于您使用 Firebase Hosting 来提供静态内容,因此还可以使用它来提供函数 API 端点。 这意味着您的静态内容和 API 端点都通过相同的主机名提供,这意味着您在发出请求时不再需要指定主机。 所有请求都可以相对于该主机。 您可以通过托管重写规则来实现此目的。

最新更新