Google chrome extension YouTube数据API v3允许浏览器应用程序密钥的引用未按预期工作

Google chrome extension YouTube数据API v3允许浏览器应用程序密钥的引用未按预期工作,google-chrome-extension,google-api,youtube-api,Google Chrome Extension,Google Api,Youtube Api,我正在努力正确配置新的YouTube数据API v3。我需要从Google Chrome扩展访问API。我已经从中创建了一个API密钥,更准确地说,是一个用于浏览器应用程序的密钥(带有referers)密钥。将允许的引用设置为空,所有引用都被允许,一切正常 然而,这个密钥嵌入在我的Chrome扩展中,因此对每个人都是公开的。任何人都可以使用我的密钥提出请求,污染我的统计数据,浪费我的配额限制。我理解允许的引用字段是为了避免这种情况。通过跟踪API请求的标题,我可以看到我的源代码如下所示: chr

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

然而,这个密钥嵌入在我的Chrome扩展中,因此对每个人都是公开的。任何人都可以使用我的密钥提出请求,污染我的统计数据,浪费我的配额限制。我理解允许的引用字段是为了避免这种情况。通过跟踪API请求的标题,我可以看到我的
源代码如下所示:

chrome-extension://myExtensionId

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

访问控制允许原点:chrome-extension://myExtensionId

看来一切都正常。但是,如果我将允许引用者字段设置为
chrome-extension://myExtensionId
,它不工作,我收到类似“未配置访问”的错误。我做错了什么


我的猜测是allowed referers字段只能与HTTP referers一起使用,但在这种情况下,这对扩展开发人员来说是一个非常恼人的限制。我想说,允许的referers字段的任何模式都可以。

任何人都可以注册访问YouTube数据API v3。我理解你对泄露API密钥的担忧,但由于没有人会从使用你的密钥而不是注册他们自己的密钥中获益,因此我认为在实践中不必担心这一点。

Chrome扩展在他们的请求中不包括
Referer
头,因此“允许的Referer”选项不起作用。我认为这是一个安全问题。不幸的是,邪恶的人存在。我也认为没有人真正从战争中受益,但是战争在这个悲伤的世界里总是发生。如果将
Referer
标题设置为
chrome,那将不仅仅是令人敬畏和合乎逻辑的-extension://myExtensionId
在扩展XMLHttpRequests中,以便您可以在Google API控制台中设置该字段,就像您从常规网页使用它一样?顺便说一句,以防万一,你也知道我另一个相关问题的答案:这是一个怎样的答案?这个问题适用于所有谷歌API(我对谷歌翻译感兴趣,它肯定不是免费的)。由于Chrome扩展是从用户的浏览器运行的,而不是从我的网站运行的,所以我不能通过HTTP引用来限制。。。