问题 在哪里放置Google地理编码API的API密钥?


我们用 Google地理编码API 将地址映射到纬度和经度。

以下是编码的示例网址(返回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密钥。


1247
2017-08-23 19:28


起源

只是为了确认,您有一个商业帐户的API密钥 - 而不是一般使用谷歌地图API的免费密钥? - Matthew
从这里添加信息到我的答案: developers.google.com/maps/documentation/business/clientside - Matthew
为了清楚地表达这一点,开发人员控制台(API)密钥只能与Google Maps客户端API一起使用。您正在拨打的电话是Google Maps Geocoding网络服务API,因此 REQUEST_DENIED 响应。 - James A Webb
可能重复 Google方向API错误:REQUEST_DENIED - geocodezip


答案:


看起来在版本3中你需要通过 ClientID 在URL而不是 key 和你在免费版中一样: https://developers.google.com/maps/articles/v2tov3#newkey

所以你的网址应如下所示: 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 for   业务实现,您必须从您的密钥参数中删除   要求。 Google Maps API网络服务将拒绝使用的请求   客户端ID和密钥。

身份验证和授权中提供了更多信息   本指南的一章。

如果您丢失了客户端ID,可以通过登录来恢复它   支持门户并单击地图:从链接上添加URL   页面左侧。

编辑

有关详细信息,请参阅有关将客户端ID传递给Earth API,v2 API和Maps API for Flash的说明 加载客户端API

如果您丢失了客户端ID或加密密钥,则可以通过登录到恢复密钥来恢复它们 支持门户 并单击“地图”:从页面左侧的链接添加URL。


12
2017-08-23 19:42



我们刚刚通过电话与谷歌聊天。很遗憾,我们没有地理编码业务帐户的费用 $ 17,000名 每年。现在我们正与客户交谈。非常感谢你的帮助。 - Win
为了避免限制你在应用程序的数据库中产生缓存 - 取决于你的地理编码(不常见的地址 - 这基本上意味着你需要外出,或经常重复使用的常见位置,这意味着你只需要调用谷歌的新API API)。 - Matthew
相关: gis.stackexchange.com/questions/15052/... - Matthew