gpt4 book ai didi

typescript - Cloud Functions auth onCreate 触发器将用户添加到 Firestore

转载 作者:行者123 更新时间:2023-12-04 00:32:51 25 4
gpt4 key购买 nike

当用户通过 google auth 注册时,我试图将用户对象添加到 firestore。这是我的代码:

export const accountCreate = functions.auth.user().onCreate(user => {
console.log(user.data);
admin.firestore().collection('users').doc(user.data.uid).set(user.data).then(writeResult => {
console.log('User Created result:', writeResult);
return;
}).catch(err => {
console.log(err);
return;
});
});

不走运,我只是不断收到错误:

错误:无法将类型 ([object Object]) 编码为 Firestore 值
在 Function.encodeValue (/user_code/node_modules/firebase-admin/node_modules/@google-cloud/firestore/src/document.js:773:11)

我不确定为什么这不起作用。有任何想法吗?
谢谢

最佳答案

user.data不是有效的 Cloud Firestore 文档,因此 Firestore 拒绝写入。相反,您应该设置您关心的特定字段,例如:

export const accountCreate = functions.auth.user().onCreate(user => {
console.log(user.data);
userDoc = {'email' = user.data.email,
'displayName' = user.data.displayName}
admin.firestore().collection('users').doc(user.data.uid)
.set(userDoc).then(writeResult => {
console.log('User Created result:', writeResult);
return;
}).catch(err => {
console.log(err);
return;
});
});

关于typescript - Cloud Functions auth onCreate 触发器将用户添加到 Firestore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48452317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com