为什么Google地理编码API无密钥工作?

Jin*_*ala 17 google-maps google-maps-api-3

我正在阅读Google地理编码API的文档,我注意到它地理编码请求中需要一个密钥,但是当我这样做时" https://maps.googleapis.com/maps/api/geocode/json ?address = LosAngeles,usa "它给了我预期的结果.

为什么是这样?文档错了吗?在一定数量的请求之后它会开始要求密钥吗?或者有什么我不理解的东西?

Fra*_*ois 20

大多数地理编码API请求不需要提供密钥.如果您未提供密钥,Google将使用基于IP的配额来确定何时达到每日2,500次查询限制.

某些参数需要密钥,不允许基于IP的配额.这些在文档中明确标出:

注意:此参数仅适用于包含API密钥或客户端ID的请求.

目前,这仅适用于反向地理编码中的两个参数:result_typelocation_type.

  • 你确定它的IP基础吗?我有一个我没有钥匙使用的应用程序.我在连接到我的电脑的手机上测试 - 手机没有载波因此它只能通过wifi启用.在测试过程中,我偶尔会看到配额命中,当发生这种情况时,我会在带有t-mobile或verizon服务的手机上加载应用程序...将它连接到我的电脑,wifi关闭......我仍然得到配额错误消息.这意味着它不是基于IP的,并且它们正在跟踪我的应用程序包ID或其他内容.我最初读的也是基于IP的,但现在我不认为这是100%准确. (2认同)

Ted*_*Ted 5

资源

从2018年6月11日开始,您需要使用信用卡启用计费功能,并为所有项目提供有效的API密钥。这将使您能够轻松扩展,从而减少停机时间和性能问题。此外,我们将18个独立的API简化为三种产品:地图,路线和地点。

此外,2016年6月,我们宣布将停止支持无密钥使用,这意味着任何不包含API密钥或客户端ID的请求。该操作将于6月11日生效,并且不再支持无钥访问。那时,对Maps JavaScript API和Street View API的无键调用将返回带有“仅出于开发目的”的水印的低分辨率地图。对以下任何API的无键调用将返回错误:Maps Static API(包括Static Street)视图),路线API,距离矩阵API,地理编码API,地理位置API,位置API,道路API和时区API。

为避免对您的项目造成服务中断,请访问我们的“入门”页面以启用计费帐户并生成API密钥。生成并保护API密钥后,请确保使用新的API密钥更新您的应用程序。