Objective c 解析地理查询始终为空

Objective c 解析地理查询始终为空,objective-c,parse-platform,Objective C,Parse Platform,我目前正在尝试让Parse的地理查询系统工作。在我的数据浏览器上,我安装了一个geo point类型的键“location”,其中设置了纬度为30.272636013176、经度为-97.75766807716373的geo point 但是,如果我尝试使用以下代码进行查询,我总是会得到“结果”:[] 请注意,查询正在成功运行;没有错误。问题是我应该进行的安装 如果我将查询中的纬度和经度更改为数据浏览器中显示的纬度和经度,仍然会得到空结果。这是什么原因?无法查询某个点附近的设备安装情况吗?客户端

我目前正在尝试让Parse的地理查询系统工作。在我的数据浏览器上,我安装了一个geo point类型的键“location”,其中设置了纬度为30.272636013176、经度为-97.75766807716373的geo point

但是,如果我尝试使用以下代码进行查询,我总是会得到“结果”:[]

请注意,查询正在成功运行;没有错误。问题是我应该进行的安装


如果我将查询中的纬度和经度更改为数据浏览器中显示的纬度和经度,仍然会得到空结果。这是什么原因?无法查询某个点附近的设备安装情况吗?

客户端无法查询
安装
类,原因很好。
安装
类中存储了太多敏感信息,无法从客户端进行查询

location
属性移动到可以查询的另一个类,或者在云函数中查询它


如果使用Parse.Cloud.useMasterKey(),您可以在云代码中查询它,,尽管我强烈建议使用不同的类来存储
位置

url是否应为
https://api.parse.com/1/classes/Installation
而不是
https://api.parse.com/1/classes/PlaceObject

那么有没有一种方法可以将location属性移动到另一个类,但保持该信息与其他类的连接个别装置?理想情况下,我希望能够说,向某个位置附近的所有设备发送推送通知。此外,我不确定我是否理解您的意思,即无法查询安装类。我可以在一个安装中为任意多个自定义标记设置查询,并且它们可以正常工作。我可以在installation类中设置频道的查询,它们可以正常工作。这是安装中唯一一个查询不正确的列。能否确认安装类中只有一个GeoPoint类型的列?user3684980-要回答上述问题,可以创建另一个表,并将objectId或installationId用作外键。事实上,我正试图做和你看起来一样的事情,所以我饶有兴趣地看着这个答案。当我尝试使用云代码时,我得到了一个“错误102$nearSphere:无效的geopoint对象”,这导致我尝试您在OP中提出的问题。@Jason我也遇到了类似的问题。我想知道你们是否已经解决了这个问题?
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