解析REST API $ exists命令

时间:2015-08-03 00:36:00

标签: rest curl parse-platform

我使用curl使用$ exist约束查询我的数据库,如下所示:

curl -X GET \
   -H "X-Parse-Application-Id: <myId>" \
   -H "X-Parse-REST-API-Key: <myKey>" \
   -G \
   --data-urlencode 'limit=1000' \
   --data-urlencode 'where={"someStringField":{"$exists":true}}'\
   https://api.parse.com/1/classes/SomeClass

这个应该返回1000个对象,因为有两千个结果,其中&#34; someStringField&#34;被定义为。但是,仅返回约5个结果。如果我运行以下查询,我可以得到一千个结果:

curl -X GET \
   -H "X-Parse-Application-Id: <myId>" \
   -H "X-Parse-REST-API-Key: <myKey>" \
   -G \
   --data-urlencode 'limit=1000' \
   --data-urlencode 'where={"someStringField":"someValue"}'\
   https://api.parse.com/1/classes/SomeClasee

是什么给出的?当我使用javascript API时,我没有任何问题。

1 个答案:

答案 0 :(得分:0)

弄清楚出了什么问题。在发出GET请求时使用主密钥。 REST API密钥不一定具有访问Parse中所有对象的权限。这段代码有效。

curl -X GET \
   -H "X-Parse-Application-Id: <myId>" \
   -H "X-Parse-Master-Key: <myMasterKey>" \
   -G \
   --data-urlencode 'limit=1000' \
   --data-urlencode 'where={"someStringField":{"$exists":true}}'\
   https://api.parse.com/1/classes/SomeClass