Parse.com RESTAPI& angularJS查询约束关键问题

时间:2014-08-06 15:11:48

标签: angularjs parse-platform

我有一个函数,它使用下面的代码在Parse上执行HTTP GET请求。 (我使用AngularJs)。

$http({ method: 'GET',
            url: 'https://api.parse.com/1/classes/foo',
            headers:{
                "X-Parse-Application-Id": "MYPARSEAPPID",
                "X-Parse-REST-API-Key": "MYPARSERESTAPIKEY",
                "X-Parse-Session-Token": UserService.sessionToken,
            },
            params: {
                where:{"toto":{"$gt":42}}
            }       
}).success(function(data, status) {
            /* DO SOMETHING*/
        }).error(function(data, status) {
            /* DO SOMETHING */
});

我使用Parse'编写了这段代码。 REST文档(https://www.parse.com/docs/rest#queries-constraints) 给出了这个例子(curl):

curl -X GET \
  -H "X-Parse-Application-Id:..............." \
  -H "X-Parse-REST-API-Key:.............." \
  -G \
  --data-urlencode 'where={"score":{"$gte":1000,"$lte":3000}}' \
  https://api.parse.com/1/classes/GameScore

这是上面通过Chrome开发者工具看到的AngularJS请求的结果:

where:{"toto":{}}

这就是相同代码的结果,没有' $'角色(它不起作用,但是requet按照它应该发送):

where:{"toto":{"gt":42}}

正如您所看到的,约束因为' $'而消失。字符。

我认为角度不允许我们使用' $'因为它用于Angular属性/方法。 任何建议/想法/示例都会非常有用。

被修改: 我试图将这些参数字符串化为RobH所说的,点击here查看Chrome浏览器开发工具中看到的结果。

这个查询的结果似乎完全忽略了给定的约束,即使' $' caracter没有条纹。我发现其他人试图对params(How to pass parameters to $http in angularjs?)进行字符串化,但根据最后的评论,它"不起作用({method:' GET',url:&# 39; / search',stringifiedJsonData}不是有效的JavaScript文字)"。我不确定此评论的相关性,因为我是AngularJs和Web上的新人。

还有其他想法吗?

0 个答案:

没有答案