0

我正在尝试创建一个云函数,它将发送者的 objectId 和用户名保存为数组,在数组“request”中,用于目标,并将目标的 objectId 和用户名保存为数组,在数组“待定”中发件人。

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 已经过测试,是正确的结果。

我的云代码有什么问题?

4

1 回答 1

0

我是个白痴。

获取用户的对象 ID 如下所示:

                    user.id

并获取用户名是这样完成的:

                   user.getUsername()
于 2014-08-24T00:12:39.213 回答