在Cloud Code中更新用户并不是在本地反映出来的

时间:2016-09-15 01:32:57

标签: javascript parse-platform cloud-code parse-server

我正在使用云代码(例如

)更新用户对象中的字段
Parse.Cloud.define("update", function(req, res){
    req.user.unset("var");
    req.user.save(null, {
        useMasterKey: true,
    }).then(function(user){
        res.success("Updated");
    });
});

问题是虽然更新后的值会反映在用户表的后端,但Parse.User.current()仍会在更新前引用该值。我试过打电话

Parse.User.current().fetch()

但无济于事。我不太明白为什么会发生这种情况,因为我可以使用其他对象执行此操作,并且它可以按预期工作。退出并重新登录确实可以解决问题,但这不方便,并且不会对用户友好。取消设置值似乎保持本地用户变量不被"取出"然而,将值设置为空字符串似乎可以使其工作,但我不相信这是一个很好的做法,可能会导致意外的结果。

1 个答案:

答案 0 :(得分:0)

本地调用fetch对我有用,但在云端调用则不行。