限制谷歌自动完成查询?

Posted

技术标签:

【中文标题】限制谷歌自动完成查询?【英文标题】:Limit on google autocomplete queries? 【发布时间】:2013-03-18 06:29:56 【问题描述】:

我计划在我的网站上使用 Google 自动完成功能。我可以查询的数量有限制吗?

我正在使用此问题中列出的确切代码: How to limit google autocomplete results to City and Country only

【问题讨论】:

【参考方案1】:

对于 Google Places API:

允许使用 API 密钥提交请求的应用程序 1 000 每 24 小时的请求。您可以将上述限制增加到 每 24 小时 150 000 次请求,通过以下方式验证您的身份 谷歌开发者控制台。需要信用卡 验证,通过在控制台中启用计费。

对于 Google Places javascript 库:

这些限制不适用于 Places JavaScript 库,它确实 不需要 API 密钥,并且包含在 Google Maps JavaScript 中 API 限制。

来源:https://developers.google.com/places/webservice/usage

【讨论】:

但是 JavaScript API 限制是按地图显示的,它们不会告诉任何地方的限制。 按照源链接和 Places Library 与 API 的文档,您最终仍会使用使用 API 的 google.maps.places.Autocomplete。所以要么是文档有误,要么是谷歌向我们收取了他们不应该做的事情?【参考方案2】:

您可以毫不犹豫地使用 Google Maps Javascript API Places 库。其他答案中提到的限制适用于 Places API,而不是 Maps API 的 Places 库。来自https://developers.google.com/places/uplift

为您的应用选择合适的服务

如果您正在开发一个只需要搜索地点而不提交新地点或 Place Bumps 的基于 Web 的应用程序,那么您应该使用 Maps API 的 Places 库,而不是使用 Places API 网络服务。 Places 库将配额分配给每个最终用户,而不是每个键。这意味着您的可用配额会随着您的用户群而增加,而不是固定在一个上限。

【讨论】:

但是分配给每个最终用户的配额是多少? 这是我去年回复后引入的新配额。【参考方案3】:

使用限制

Google Places API 有以下查询限制:

拥有 API 密钥的用户每 24 小时允许 1 000 个请求

通过 API 控制台验证其身份的用户允许 每 24 小时 100 000 次请求

验证需要信用卡,方法是在控制台中启用结算功能。我们要求您提供信用卡纯粹是为了验证您的身份。使用 Places API 不会从您的卡中收取费用。 虽然下限足以用于开发和测试,但我们建议在启动应用程序之前启用上限。 可以申请额外配额。 请注意,某些服务可能有乘数。例如,文本搜索受 10 倍乘数的影响,导致每个文本搜索请求计为 10 个请求,超出您的配额。


更新:

我相信,使用 Google Maps JavaScript API v3 时,您只能使用 this policy,而使用 Google Places API,您只能使用 these limits。 我认为您应该通过验证,以便将限制从 1000 提高到 100000

【讨论】:

弗朗索瓦,谢谢您的回复。我专门谈论自动完成功能。我已经实现了它,并且已经使用有效的 API 密钥使用了一周,但我没有看到控制台报告中记录了任何请求。我在一个谷歌论坛groups.google.com/forum/#!msg/google-places-api/89f4EsHqP44/… 上找到了这个帖子,个人说地点 API 有一个基于 IP 的限制。太糟糕了,任何地方都没有简单的解释。 谢谢。但是为什么我的控制台报告没有显示任何请求,有什么想法吗? 这就是你要找的东西,developers.google.com/maps/documentation/javascript/usage

以上是关于限制谷歌自动完成查询?的主要内容,如果未能解决你的问题,请参考以下文章

AngularJS - 在谷歌自动完成中限制国家

谷歌地图自动完成:只输出地址,没有国家和城市

使用特定城市的谷歌地图 API 获取自动完成的地址

自动完成算法?

谷歌地图和谷歌位置自动完成冲突

谷歌地图自动完成动态数组