向用户添加数据,然后使用Parse Cloud Code保存它们

时间:2014-08-23 22:39:51

标签: javascript ios parse-platform cloud-code

我尝试制作一个云端功能,将发件人的objectId和用户名作为数组保存在数组内,请求#34;为目标保存目标&#39 ; s objectId和用户名保存为数组,在数组" pending"对于发件人。

Parse.Cloud.define("newGameRequest", function(request, response) {//A
// Get the user who called the function
var user = request.user;

var target;

var query = new Parse.Query(Parse.User);
query.get(request.params.friendId, {
success: function(object) {

        var target = object;

        var friendInfo = [target.objectId, target.username];
        var userInfo = [user.objectId, user.username];

        user.add("pending",friendInfo);
        target.add("request",userInfo);


         Parse.Object.saveAll([user, target], { useMasterKey: true });


  response.success("Success");

    },
    error: function(object, error) {
        response.error(error);
    }
});

});

在数据浏览器中查看显示每个用户的数组都已保存,但仅保存为空值([[null,null]]两者)。

来自iOS设备的呼叫如下:

[PFCloud callFunctionInBackground:@"newGameRequest"
                   withParameters:@{@"friendId": self.friend.objectId}
                            block:^(NSString *result, NSError *error) {
                                if (!error) {

                                }
                                else {
                                    NSLog(@"%@",result);
                                }
                            }];

self.friend.objectId已经过测试,是正确的结果。

我的云代码有什么问题?

1 个答案:

答案 0 :(得分:0)

我是个白痴。

获取用户的对象ID如下:

                    user.id

获取用户名的方式如下:

                   user.getUsername()