解析 - 限制包含关系返回的字段

时间:2014-07-11 10:55:23

标签: rest curl parse-platform

是否可以将Parse在相关字段上返回的字段限制为所请求的对象?

Parse docs解释了如何通过将字段名称列表传递给keys属性来限制GET请求返回的字段。

  

您可以通过传递keys以逗号分隔的列表来限制返回的字段。要检索仅包含scoreplayerName字段的文档(以及objectIdcreatedAtupdatedAt等特殊内置字段,请执行以下操作:< / p>

curl -X GET \
     -H "X-Parse-Application-Id: [APP_KEY]" \
     -H "X-Parse-REST-API-Key: [REST_KEY]" \
     -G \
     --data-urlencode 'keys=score,playerName' \
     https://api.parse.com/1/classes/GameScore

因此,这会返回仅包含GameScorescore字段的playerName个对象。我对GameScore对象上的其他字段不感兴趣。

Parse还允许您通过将关系名称传递给includes属性来将数据包含在关系对象中。因此,假设我有User通过名为GameScore的字段与gameScore类有关系。

curl -X GET \
     -H "X-Parse-Application-Id: [APP_KEY]" \
     -H "X-Parse-REST-API-Key: [REST_KEY]" \
     -G \
     --data-urlencode 'include=gameScore' \
     https://api.parse.com/1/classes/User

这将返回UsergameScore对象中存在的所有字段。

我遇到的问题是,我可以将两者结合起来为User发出GET请求,包含gameScore关系,但限制在所包含的gameScore对象上返回的字段,以便它只返回score字段?

我希望这样的事情可以发挥作用:

curl -X GET \
     -H "X-Parse-Application-Id: [APP_KEY]" \
     -H "X-Parse-REST-API-Key: [REST_KEY]" \
     -G \
     --data-urlencode 'keys=gameScore.score' \
     --data-urlencode 'include=gameScore' \
     https://api.parse.com/1/classes/User

不幸的是我收到了一条错误,说明了

  

{“code”:105,“error”:“无效字段名称:gameScore.score”}

由此我假设不可能限制所包含关系的字段?

1 个答案:

答案 0 :(得分:0)

我的解决方案最终是编写一个自定义云代码方法,在将字段返回给客户端之前删除这些字段。