我正在编写一个函数,每当在 Firebase 中创建新用户时就会触发该函数。调试这个函数花了我很长时间,因为我为每一个更改都部署了云函数。 我使用 Firebase CLI 模拟数据库中的其他事件,但我不知道如何正确模拟用户创建(使用所有参数)。
要启动 CLI,我运行:
firebase experimental:functions:shell
我的职能是:
exports.createTreeForNewUser = functions.auth.user().onCreate(event => {
const user = event.data;
console.log(user.uid);
console.log(user.displayName);
console.log(user.email);
console.log(user.photoURL);
console.log(user.metadata.creationTime);
return null;
});
当我在 Firebase CLI 中运行以下命令时:
createTreeForNewUser()
它打印 undefined
4 次,然后出现异常,因为它无法从 undefined
中提取 creationTime
。
这种行为是有道理的,但无论我尝试什么,我都无法弄清楚如何正确传递事件
(以便该函数能够提取我需要的所有参数)。
问题是:
如何运行 createTreeForNewUser
并正确设置 event
参数?
谢谢! 斯拉维克
最佳答案
将用户对象传递给函数:
createTreeForNewUser({
uid: 'xxx',
displayName: 'John',
email: 'foo@bar.com',
photoURL: 'https://...',
metadata: {creationTime: 123}
})
关于javascript - 在 Firebase 函数 CLI 中模拟用户创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47253916/