首页 > 解决方案 > 检索 firebase 函数的当前唯一 URL

问题描述

我正在编写一个 firebase 云函数来验证用户并获取 refresh_token 和 access_token 以供以后使用。这是初始化 Google OAuth2 客户端的代码段:

const { google } = require("googleapis");

module.exports = () => new google.auth.OAuth2(
  GOOGLE_CLIENT_ID,
  GOOGLE_CLIENT_SECRET,
  `${BACKEND_URL}/authCallback`,
);

目前,我必须先将该功能部署到 firebase,然后才能获得BACKEND_URL. 我可以在函数内检索当前的 firebase 唯一 URL 吗?

标签: node.jsfirebasegoogle-oauthgoogle-cloud-functions

解决方案


HTTPS 函数 URL 如下所示:

https://us-central1-YOUR-PROJECT.cloudfunctions.net/test

其中“us-central1”是部署区域,“YOUR-PROJECT”是您的 Firebase/Cloud 项目的名称。“测试”是函数的名称。其他一切都保持不变。

process.env.FUNCTION_REGION是当前功能已部署的区域。

process.env.GCP_PROJECT是部署了当前函数的项目的名称。

因此,如果您假设当前运行的函数与目标 HTTPS 函数共享相同的项目和部署区域,则可以使用这两个进程环境变量的内容来构建 URL。


推荐阅读