7

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

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

似乎在这个问题中发生了某种类型的直接网络访问:Querying Google Places API using jQuery

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

最终摘要编辑:有两种不同的方式从谷歌请求数据,如下面@Dan Nissenbaum 的回答所述。自从我的原始问题以来,上面引用的 QUERY_LIMIT 问题已经过编辑,还包含有关这两个选项的更多信息。

4

2 回答 2

6

也许您指的是旨在在 SERVER 上使用的 Google Places API(即使用 PHP 直接调用 Google Places API)与使用完全不同的 Google Places Javascript 库的方法之间的区别,其中 BROWSER使用 Google 提供的 Javascript 库执行 Javascript(内部封装了对 Google Places API 的调用,因此作为 Javascript 程序员,您只需要了解 Google 提供的 Javascript 库并使用它)?

这是两种情况。

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

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

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

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

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

当您点击此 URL 时,数据将以 JSON 或 XML 格式返回,如json上面 URL 中的文本所指定(使用xmlxml 的文本)。当您在浏览器中点击 URL 时,此数据的返回与任何 URL 调用返回的数据完全相同。

您可以通过直接在浏览器中输入 URL 来进行测试,然后查看结果。

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

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

于 2012-05-02T21:23:16.960 回答
2

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

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

于 2012-05-02T21:53:27.380 回答