【发布时间】:2021-07-16 04:26:04
【问题描述】:
我正在尝试通过云代码为新用户添加一些附加属性:
Parse.Cloud.beforeSave(Parse.User, (request) => {
if (!request.original) {
// New user
Parse.Config.get()
.then((config) => {
const ProfileIcon = Parse.Object.extend("ProfileIcon");
const iconId = config.get("defaultProfileIcon");
const user = request.object;
// ...many user.set
user.set("profileIcon", ProfileIcon.createWithoutData(iconId), {
useMasterKey: true,
}); // Pointer
// This will save as expected, but cause recursion
// user.save({ useMasterKey: true });
})
.catch((err) => {
console.error(err);
});
}
});
上面的代码触发并执行没有任何错误,但是当我检查数据库时,我的自定义属性都没有出现。传递主密钥也无济于事。我该如何解决这个问题?
还是因为来自客户端的请求(Android,无权访问主密钥),如果是这样,那么我该如何设置请求的主密钥,因为 Parse.Cloud.useMasterKey() 已弃用?
【问题讨论】:
标签: parse-platform parse-server parse-cloud-code