第二代Cloud Functions中Firebase Auth创建触发器的替代方案
Firebase v2 Auth 创建用户触发函数的修正代码
问题原因
firebase-tools更新后,第二代Cloud Functions的Auth onCreate事件参数结构发生变化,原代码直接接收user参数的写法已不再适用,需从事件对象的data属性中提取用户数据。
修正后的代码示例
const { onCreate } = require("firebase-functions/v2/auth"); const { FieldValue } = require("firebase-admin/firestore"); const admin = require("firebase-admin"); // 初始化Firebase Admin(未初始化时需添加) admin.initializeApp(); const firestoreDB = admin.firestore(); // 导入自定义的邀请处理模块(替换为你的实际路径) const myInviteFunctions = require("./your-invite-functions-path"); exports.removeInvite = onCreate(async (event) => { // 从事件对象中提取用户数据 const user = event.data.user; if (!user) { console.log("未获取到有效用户数据,终止执行"); return; } return await myInviteFunctions.removeInvite(FieldValue, firestoreDB, user); });
关键改动说明
- 触发函数的参数从
user改为event,用户数据需通过event.data.user获取 - 确保Firebase Admin实例已正确初始化,Firestore数据库实例的获取方式合规
- 增加用户数据空值校验,避免异常场景下的执行错误
内容的提问来源于stack exchange,提问作者eagle
相关产品推荐
相关产品推荐

