将文本数组存储到Parse数据库中

时间:2015-09-22 14:27:31

标签: javascript html database parse-platform

我正在创建一个邮件系统,用户A向用户B发送一段文本,用户B将文本存储在名为Inbox(具有属性数组)的列中的数组中。

我创建了5个用户,前2个用户回复“POST https://api.parse.com/1/classes/_User/fjT08jUUk8 400(错误请求)”

然而,最后3位用户完美无缺。我真的很沮丧,因为我无法弄清问题是什么。所有用户都使用相同的条件创建。

我将链接此处使用的代码:

<textarea name="msg" id="msg" rows="10" cols="60"></textarea>
<button ng-click="sendMessage(fetched_user.id)">Send</button>

(fetched_user.id是您要定位的用户的相应ID,请仔细检查)

$scope.sendMessage = function(UID) {     
    var query = new Parse.Query(Parse.User);

    query.equalTo('objectId', UID);
    query.first({
        success: function(object) {
            var text = $('#msg').val();
            object.add("Inbox", text );
            object.save();
            $scope.$apply();    
        },
        error: function(error) {
        alert("Error: " + error.code + " " + error.message);
        }

    });
}

一如既往,我真的很喜欢任何答案!在此先感谢:)

解决!!!!

经过大量研究后,我发现object.save()是问题,而且它给了我这个错误:错误:206 Parse :: UserCannotBeAlteredWithoutSessionError

我认为这是某种安全措施,并非每个人都可以随意更改用户。这必须通过云代码来完成,云代码就是整个其他部门。所以对于那些想要完成这项任务的人来说,请阅读Parse Cloud Code!

1 个答案:

答案 0 :(得分:0)

您可以使用request.user来获取任何云功能的调用用户,function loadslide(){ ... $('.m').html($('.bigSlider div:nth-child(1)').html()).fadeIn("slow"); } $('.rightarrow').click(function(event){ event.preventDefault(); loadslide(); }); 是指向用户的指针,应该使用而不是传递objectId。