YouTube Data API v3允许浏览器应用密钥的引用无法按预期工作

时间:2013-03-01 20:57:23

标签: google-chrome-extension google-api youtube-api

我正在努力尝试正确配置新的YouTube Data API v3。我需要从Google Chrome扩展程序访问API。我已经从Google APIs Console创建了一个API密钥,更确切地说是一个用于浏览器应用程序的密钥(带有引用程序)密钥。将允许的引用设置为空白后,所有引用都被允许,一切正常。

但是,此密钥嵌入在我的Chrome扩展程序中,因此对所有人公开。任何人都可以使用我的密钥发出请求,污染我的统计数据并浪费我的配额限制。我理解允许参考字段是为了避免这种情况。跟踪我的API请求的标头,我可以看到我的Origin如下:

chrome-extension://myExtensionId

此外,在API的响应中,我可以看到以下标题:

Access-Control-Allow-Origin: chrome-extension://myExtensionId

所以一切似乎都正常。但是,如果我将允许的引用字段设置为chrome-extension://myExtensionId,则它不起作用,我会收到“访问未配置”错误。我做错了什么?

我的猜测是允许的引用字段只能用于HTTP引用,但在这种情况下,这对扩展开发人员来说是一个非常烦人的限制。我想说,对于允许的引用字段,任何架构都应该没问题。

1 个答案:

答案 0 :(得分:0)

任何人都可以注册访问YouTube Data API v3。我理解您对泄露API密钥的担忧,但由于没有人真正从使用您的密钥中获益而不仅仅是注册自己的密钥,我认为这在实践中并不值得担心。