如何在Google Cloud Functions Gen2源码中指定地域与AppCheck
Cloud Functions v2 指定地域并启用App Check的解决方案
在Cloud Functions v2中,不再采用v1的链式调用方式配置参数,而是将地域、App Check验证等所有配置项作为第一个参数传入onCall/onRequest方法。以下是具体实现代码和说明:
完整代码示例
import { onCall, HttpsError } from "firebase-functions/v2/https"; export const someFunction = onCall( { // 指定函数部署地域(支持单个字符串或多个地域的数组) region: "europe-west1", // 启用App Check自动验证 securityPolicy: { enforceAppCheck: true } }, async (request) => { // 可选:手动处理App Check验证失败场景 if (!request.app) { throw new HttpsError("failed-precondition", "App Check验证未通过,请确保客户端已配置有效令牌"); } // 业务逻辑代码 return { message: "操作完成" }; } );
关键配置说明
- 地域指定:直接在配置对象的
region字段设置,支持单个地域字符串(如"europe-west1")或多地域数组(如["europe-west1", "us-central1"]),代码中配置的地域优先级高于部署命令或firebase.json的全局配置。 - App Check启用:通过
securityPolicy.enforceAppCheck: true开启自动验证,函数会自动校验请求中的App Check令牌,验证失败时request.app会为undefined,可据此抛出自定义错误。 - 其他函数配置(如内存限制、超时时间)也可统一放入该配置对象,比如
memory: "512MiB"。
内容的提问来源于stack exchange,提问作者IT-Guy007
相关产品推荐
相关产品推荐

