我正在查看以下指南:https://developers.google.com/youtube/v3/getting-started
与YouTube的API互动的第一步是:
您需要Google帐户才能访问Google Developers Console, 请求API密钥,并注册您的申请。
他们继续展示他们使用密钥的例子:
URL: https://www.googleapis.com/youtube/v3/videos?id=7lCDEYXw3mM&key=YOUR_API_KEY &安培;部分=片断,contentDetails,统计,状态
我有一个客户端应用程序,很多人都使用它。该应用程序向YouTube的API发出搜索请求。 YouTube的API每天的请求数量限制为5000万次。
由于它是一个客户端应用程序,我的API密钥嵌入到代码中。
今天,恶意用户编写了一些内容来最大化请求:
我想知道我有什么办法可以抵御这种活动。我唯一的选择是托管服务器,通过我的服务器路由所有对YouTube API的需求,并在太频繁时拒绝请求吗?
我真的担心实现类似的东西。它会有效地使每个API请求的等待时间加倍,并且还会给服务器增加一笔看似不必要的金额,但可能需要它。
我还有其他选择吗?
由于
答案 0 :(得分:4)
不要认为它是恶意用户。我认为YouTube方面出了问题,因为我看到与我的应用程序发出的API请求完全相同的问题
答案 1 :(得分:3)
您可以使用限制来保护您的API密钥。
使用公共API密钥的REFERERS
属性。转到console developers -> API&Auth -> Credentials
REFERERS
是对它的引用
一个域名。 REFERERS
是对IP的引用。
(例如,您的服务器的IP)例如,如果您使用github.io进行应用程序的实时演示,REFERERS
将指向http://user.github.io/*
您可以阅读更多register your application
如果您的应用程序在服务器上运行,请使用服务器密钥。不要使用它 服务器代码之外的密钥。例如,不要将其嵌入网络中 页。要防止配额被盗,请限制您的密钥,以便提出请求 只允许从您的服务器'源IP地址。
使用浏览器密钥 如果您的应用程序在客户端上运行,例如Web浏览器。至 防止您的密钥被用于未经授权的网站,只允许 来自您管理的域名的推介。
帮助您的屏幕:
答案 2 :(得分:2)
这是由于配额成本增加,暂时还原。我们将在http://apiblog.youtube.com/和https://developers.google.com/youtube/v3/revision_history中公布费用变化。
答案 3 :(得分:1)
这似乎是一个重大错误。同样的问题 - 配额使用情况在9月3日开始疯狂刺激,现在请求费用高于documentation states。
有人报告说这是他们的错误跟踪系统的缺陷。我建议每个受影响的人去那里并为缺陷做好准备,以引起对它的关注:
答案 4 :(得分:0)
我提出以下想法:
答案 5 :(得分:0)
这是正确的。当你制作你的钥匙时,请确保你使用了REFERERS,这样即使他们确实得到你的钥匙也不会对他们有效!
答案 6 :(得分:-1)
我们也看到了这个错误,似乎偏差太大了。结果概述是813.844,但今天使用的API为49,379,348 50,000,000个请求