首页 > 解决方案 > Firebase 函数 user().onCreate:传递参数

问题描述

我有两种类型的用户,管理员和普通用户。在我的 firebase 数据库中,每个管理员在“文本”集合中都有一个文档。因此,当创建一个新用户时,我想检查它是否是管理员。然而,在我的 Flutter 客户端上,除了电子邮件和密码之外,我无法传递任何其他参数,那么我的函数如何知道创建帐户的用户是否是管理员?

这是我没有检查的功能:

exports.onAdminCreate = functions.auth.user().onCreate((user) => {
// If user is an admin
try {
    return admin.firestore().collection('texts').doc(user.uid).create({author: user.displayName, text: null});
} catch (e) {
    console.log(e);
    return null;
}
// Else
console.log('No admin');
return null;
});

标签: javascriptfirebasefirebase-authenticationgoogle-cloud-functions

解决方案


我认为其他帖子对您很有帮助。如您所见,您可以使用 HashMap 将参数传递给 firebase 函数

Map<String, Object> data = new HashMap<>();
data.put("var1", text);
data.put("var2", text);

您可以在共享链接中查看完整示例。


推荐阅读