如何解决beforeSave 不修改 request.object
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()
已被弃用?
解决方法
此处,modifying object on save 没有提及任何关于 return
的内容,但 before save file 提及。所以我想我会试一试,结果它奏效了。仍然不确定这是否是正确的方法。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。