使用 Google Places API 时,"using the JavaScript library" 和 "calling the API directly" 有什么区别?



我已经多次看到对Google Places图书馆/服务的两种引用形式,使用JavaScript与直接调用API,但我不明白其中的区别。Google Docs 没有描述访问 API 的两种方法。

例如,这个问题讨论了访问 API 的 2 种方法:循环OVER_QUERY_LIMIT

这个问题

似乎发生了某种类型的直接网络访问:使用jQuery查询Google Places API

这是没有一种涉及格式化 URL 参数的旧方法,而新方法是利用 JavaScript 库调用?

最终摘要编辑:有两种不同的方式可以从Google请求数据,如下面的Nissenbaum的回答中所述@Dan。自从我最初的问题以来,上面提到的QUERY_LIMIT问题已经过编辑,以包括有关这两个选项的更多信息。

也许你指的是打算在服务器上使用的Google Places API(即利用PHP直接调用Google Places API(与使用完全不同的Google Places Javascript库方法之间的区别,其中浏览器使用Google提供的Javascript库执行Javascript(内部包装对Google Places API的调用, 这样你,作为一个Javascript程序员,只需要了解Google提供的Javascript库,并使用它(?

下面是两种方案。

场景 #1:直接使用 API。 对于此方法,您必须参考 Google 的 API 文档,了解 Google 地方信息API:https://developers.google.com/maps/documentation/places/。

使用此 API 的工作原理如下(仅提供一个简单的示例(。 假设您要检索纬度 1000 米内的地方=-27.2531166,经度=138.8655664。 您需要按照 API 文档:https://developers.google.com/maps/documentation/places/#PlaceSearchRequests 中所述点击 URL。

在此示例中,URL 如下所示(很长(:

https://maps.googleapis.com/maps/api/place/search/json?location=-27.2531166,138.8655664&radius=1000&sensor=false&key=AddYourOwnKeyHere

你需要一把钥匙供你个人使用,我假设你有。 您还可以指定其他选项,例如将结果限制为餐厅等。

当您点击此 URL 时,数据将以 JSON 或 XML 格式返回,如上述 URL 中的文本json指定的那样(使用 xml 的文本xml(。 此数据的返回方式在浏览器中点击 URL 时从任何 URL 调用返回的数据完全相同。

您只需直接在浏览器中键入 URL 即可对此进行测试,然后查看结果。

要直接从代码中使用 API,您需要使用在代码中命中上述外部 URL 并在代码中检索结果的代码(例如,使用 PHP CURL 库,或在 Javascript 中使用 AJAX(。

场景#2:您使用Google提供的包装API的Javascript库,因此您无需处理它。 如果您不知道这是什么,我将更新答案并提供有关此的更多详细信息。

文档确实讨论了两种不同的方法。Places Library 利用 JavaScript Google Maps API 中的 Google Places 服务。如果您在浏览器中使用 Google 地图 API,这可能是适合您的方法:https://developers.google.com/maps/documentation/javascript/places

还有一个 Web 服务,它允许您直接从应用程序进行查询。您可以使用对 Google 服务的直接 http 调用来查询它。如果您需要访问服务器或移动设备上的数据,这是您要采用的方法:https://developers.google.com/maps/documentation/places

最新更新