我们知道任何人或任何公司都会向我们提供许多API来开发我们的应用程序。其中一些需要订阅并为您提供访问令牌或密钥等。您可以使用这些密钥访问和使用这些API,这些密钥使他们了解特定应用程序发生的访问次数。直到这里,一切似乎对我来说都是合法的。
但是,google apis怎么样?例如,
http://maps.googleapis.com/maps/api/elevation/xml?locations=48.3412,9.5479&sensor=true
此Web服务(API)为我们提供了给定坐标的高程。字符串中没有给出键。但他们也声明他们有一些配额(使用限制),一天可以满足2500个请求,否则它将停止为你工作。
假设我有一个电话应用程序,它将此Web服务称为XML并对其进行解析;或者有一个桌面应用程序,它做同样的事情。那么Google将如何理解为我的手机应用程序完成的请求数量?我的应用程序是否会将不同手机的识别内容发送给Google?或此配额仅对一台机器有效?
我有点疑惑,请你赐教? 感谢答案 0 :(得分:3)
这是我理解的一些提示。
从Elevation API的文档页面粘贴以下代码段。
Elevation API只能与在Google地图上显示结果一起使用;禁止使用高程数据而不显示请求高程数据的地图。有关允许使用的完整详细信息,请参阅Maps API Terms of Service License Restrictions。
Maps API仅允许授权请求。这意味着您也正在为此高程API获取密钥。
<强> ADDED 强>
如何计算和计费网站的超额使用量? Excerpt from this link
每个Google地图API服务的使用限制的超额使用量在每天结束时计算。如果您的网站每天连续90天产生超额使用量,我们会通知您,您需要通过以下方式之一做出回应:一,二,三......等。< / em>的
我认为这里重要的是referer
,当用户访问 webapp 时会提供webapp域名。
现在的问题是如果我使用我的另一台服务器获取高程json并在我的webapp上显示...
从道德的角度来看,平均每秒3次请求 - 应该是一个伟大而又大的应用程序 - 没有人会节省这种流量的付款。从技术上讲,这个问题是还是一个未解决的问题。
答案 1 :(得分:1)
更新:
根据文件(https://developers.google.com/maps/documentation/elevation/intro) 如果没有API_KEY,不允许使用Elevation API。 谷歌实施了新的免费配额限制,自动计费超过配额(或者可以实现&#34;溢价&#34;计划)
无论如何,在2016年9月API_KEY还没有真正强制要求,Elevation API仍可在没有API_KEY的情况下运行,但它需要计算全局配额限制。经常发生的情况是,在没有API_KEY的请求中,您会得到一个&#34; over_quota&#34;或&#34; server_busy&#34;错误。 我认为他们正在减少全球配额,因为错误会更频繁。
这里有一些信息:https://developers.google.com/maps/pricing-and-plans/standard-plan-2016-update
老答案:
如果没有指定API密钥,我认为Google会使用每个IP配额。
我从这里推断出来:
所有Elevation API应用程序都应使用API密钥。在您的请求中包含密钥:
- 允许您在Google Developers Console中监控应用程序的API使用情况。
- 启用每个密钥而不是每个IP地址配额限制。
- 确保Google可以在必要时就您的申请与您联系。
在此链接https://developers.google.com/maps/documentation/elevation
答案 2 :(得分:0)
这些配额适用于每台计算机,因此您基本上可以获得每个IP地址的配额。