解析云代码 query.withinKilometers
Posted
技术标签:
【中文标题】解析云代码 query.withinKilometers【英文标题】:Parse Cloud code query.withinKilometers 【发布时间】:2018-05-19 18:16:31 【问题描述】:(编辑 1)
我正在尝试使用云代码和 GeoPoint。使用函数“query.withinKilometers”我有一个指向位置类的指针,但是当我尝试调用该函数时,我得到错误“无效的键名”。这样做的正确方法是什么?我在文档中找不到任何内容,这是云函数的文件。
错误:"code":105,"message":"无效的键名:[object Object]"
这里是文档:http://parseplatform.org/Parse-SDK-JS/api/v1.11.1/Parse.html
Parse.Cloud.define("getCloseFindings", function(request, response)
var query = new Parse.Query("findings");
var locQuery = query.include("location");
var LocQuery = locQuery.get("geoLocation");
var Loc_Lat = request.params.Latitude;
var Loc_Long = request.params.Longitude;
var UserLocation = new Parse.GeoPoint(Loc_Lat,Loc_Long);
var RadiusLocation = request.params.Radius;
query.equalTo("isDeleted", false);
query.withinKilometers(locQuery, UserLocation, 100);
query.find(
success: function(results)
if(results === undefined)
var response_jsonArr =
code : 404,
message : "Not Found"
;
response.success(response_jsonArr);
else
var jsonArr = [];
for ( var i = 0; i < results.length; ++i )
var finding_location = results[i].get("location");
jsonArr.push(
name: results
);
response.success(jsonArr);
, error: function(error)
response.error(error);
);
【问题讨论】:
【参考方案1】:当您应该传递一个字符串时,您将一个对象作为第一个参数传递给query.withinKilometers。尝试使用您的 query.include 调用中的密钥,如下所示:
query.withinKilometers("location", userLocation, 100);
【讨论】:
或者“geoLocation”? 我尝试了这些变体:query.include("location.geoLocation") query.withinKilometers("location",UserLocation, Distance) 你试过“geoLocation”吗? 老实说,如果你不知道 String 和 Object 之间的区别是什么,或者 key 是什么,我建议你做一些研究,也许可以做一些更简单的事情。跨度> 是的,我做到了,我询问了支持团队,如果我得到解决方案或更好的方法会发布以上是关于解析云代码 query.withinKilometers的主要内容,如果未能解决你的问题,请参考以下文章