我目前正试图让Parse的地理查询系统工作。在我的数据浏览器上,我安装了一个密钥" location"类型为geo-point的地理位置,其纬度为30.27263636013176,经度为-97.75766807716373。
但是,如果我尝试使用以下代码进行查询,我总是得到"结果":[]。
curl -X GET \
-H "X-Parse-Application-Id: myAppKey" \
-H "X-Parse-REST-API-Key: myAPIKey" \
-G \ --data-urlencode 'limit=10' \
--data-urlencode 'where={
"location": {
"$nearSphere": {
"__type": "GeoPoint",
"latitude": 30,
"longitude": -97
}
}
}' \
https://api.parse.com/1/classes/PlaceObject
请注意,查询已成功运行;没有错误。问题是我应该安装的装置。
如果我将查询中的纬度和经度更改为数据浏览器中显示的纬度和经度,我仍然会得到空的结果。这是什么原因?是否无法在点附近查询设备安装?
答案 0 :(得分:2)
无法从客户端查询Installation
课程,理由充分。在Installation
类中存储了太多敏感信息,以允许从客户端查询。
将location
属性移动到您可以查询的另一个类,或者在云函数中查询它。
如果您使用Parse.Cloud.useMasterKey();
,可以在Cloud Code中查询,但我强烈建议您使用其他类来存储location
。
答案 1 :(得分:0)
网址应该是https://api.parse.com/1/classes/Installation
而不是https://api.parse.com/1/classes/PlaceObject
吗?