在哪里放置 Google Geocoding API 的 API 密钥?
Posted
技术标签:
【中文标题】在哪里放置 Google Geocoding API 的 API 密钥?【英文标题】:Where to place API key for Google Geocoding API? 【发布时间】:2013-08-26 22:58:01 【问题描述】:我们使用Google Geocoding API 将地址映射到纬度和经度。
这里是编码的示例 URL(返回 json) -
http://maps.googleapis.com/maps/api/geocode/json?address=Dallas&sensor=false
消息:OVER_QUERY_LIMIT
好吧,这是有道理的,因为我们每天超过 2500 个限制,所以我们将 API 密钥放在这样的位置 -
http://maps.googleapis.com/maps/api/geocode/json?key=xxxxx&address=Dallas&sensor=false
消息:REQUEST_DENIED
我想知道在哪里/如何放置 API 密钥。
【问题讨论】:
只是为了确认一下,您有一个商业帐户的 API 密钥 - 不是一般使用 google maps api 的免费密钥? 在我的回答中添加了信息:developers.google.com/maps/documentation/business/clientside 为了说明这一点,开发者控制台 (API) 密钥只能与 Google 地图客户端 API 一起使用。您正在调用的是 Google Maps Geocoding Web 服务 API,因此是REQUEST_DENIED
响应。
Google Direction APIs error: REQUEST_DENIED的可能重复
【参考方案1】:
看起来在第 3 版中,您需要在 URL 中传递 ClientID
,而不是像在免费版本中那样传递 key
:https://developers.google.com/maps/articles/v2tov3#newkey
所以你的 URL 应该是这样的:http://maps.googleapis.com/maps/api/geocode/json?client=xxxxx&address=Dallas&sensor=false
没有足够幸运拥有一个付费帐户,所以我无法测试 - 但我认为这会让你走上正确的道路。
与此链接相关:https://developers.google.com/maps/documentation/business/webservices/
客户 ID
您必须在所有 API 请求中包含您的客户端 ID。您的客户 ID 将您标识为 Maps API for Business 客户并启用支持 并为您的应用购买配额。无条件提出的请求 客户端 ID 不符合 Maps API for Business 权益的条件。
如果您要从免费 API 服务切换到 Maps API 业务实现,您必须从您的 要求。 Google Maps API 网络服务将拒绝使用 客户端 ID 和密钥。
更多信息请参见身份验证和授权 本指南的章节。
如果您丢失了您的客户 ID,您可以通过登录 支持门户并单击地图:从 页面左侧。
编辑
如需了解更多信息,包括将您的客户端 ID 传递给 Earth API、v2 API 和 Maps API for Flash 的说明,请阅读Loading Client-side APIs。
如果您丢失了客户端 ID 或加密密钥,您可以通过登录 support portal 并点击页面左侧链接中的地图:添加 URL 来恢复它们。
【讨论】:
我们刚刚通过电话与 Google 聊天。不幸的是,我们没有每年花费 $17,000 的企业帐户进行地理编码。现在我们正在与我们的客户交谈。非常感谢您的帮助。 为了避免限制您在应用程序数据库中的缓存结果 - 取决于您的地理编码(地址很少相同 - 这基本上意味着您需要掏空,或经常重复使用的常见位置,这意味着您只需为新的 API 调用谷歌的 API)。 相关:gis.stackexchange.com/questions/15052/… @Matthew 你能看看这个关于 geocodr 类 api 限制的问题***.com/questions/54144432/…以上是关于在哪里放置 Google Geocoding API 的 API 密钥?的主要内容,如果未能解决你的问题,请参考以下文章
使用 Google Geocoding API(或类似的)实现地址查找 [关闭]
Google Maps Geocoding API 使用限制
Google Geocoding API 返回错误的地址,但 Google 地图显示正确的位置
Google Maps Geocoding API,其 JS api 中缺少的 API 功能(?)