使用Parse Javascript SDK进行边界内的位置

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

标签: javascript parse-platform

我使用Parse.com的Javascript SDK,特别是withinGeoBox方法,并将谷歌地图视口的边界作为坐标传递给它。

但我得到了这样的答复:

{
  "code":102,
  "error":"Geo box queries that cross the international date lines are not currently supported"
}

我该如何解决这个问题?有没有其他方法可以用来完成同样的任务?

我试过的界限:

    neLatitude: 53.530072632824385, 
    neLongitude: -1.3375209042968663 
    swLatitude: 53.511957430628534, 
    swLongitude: -1.4611170957031163.

我还尝试过纽约,加利福尼亚,密歇根州等地的界限。我得到同样的错误。

1 个答案:

答案 0 :(得分:2)

来自the Parse docs:

  

还可以查询特定区域中包含的对象集。要在矩形边界框中查找对象,请将withinGeoBox限制添加到Parse.Query

var southwestOfSF = new Parse.GeoPoint(37.708813, -122.526398);
var northeastOfSF = new Parse.GeoPoint(37.822802, -122.373962);

var query = new Parse.Query(PizzaPlaceObject);
query.withinGeoBox("location", southwestOfSF, northeastOfSF);
query.find({
  success: function(pizzaPlacesInSF) {
    ...
  }
});

听起来你正在将坐标传递给Parse交换。 API期望(SW,NE)中的点数顺序,但我猜测你正在通过(NE,SW)。

这些角落定义的其中一个矩形绝对不会跨越国际日期行:

enter image description here

但另一个矩形确实:

enter image description here