重定向到 chrome 扩展页面现在变成了 chrome-extension://invalid

Dic*_*rdt 2 google-chrome-extension

我正在构建一个 chrome 扩展,它使用 OAuth 访问许多 API。我没有将我的消费者机密存储在扩展程序中,而是重定向到获取令牌的服务器,然后重定向回扩展程序中的页面。

直到最近,这都运行良好。现在,当重定向回扩展程序时,扩展程序页面将替换为 chrome-extension://invalid。

我现在缺少某些设置吗?

Rob*_*b W 5

您必须通过将资源的路径添加到"web_accessible_resources"清单文件的部分,将扩展中的页面声明为“网络可访问” 。最近,一个更新被推送到 Chrome 32,它会影响重定向到扩展程序中页面的行为。

您可以在 Chromium-extensions 邮件列表上的公告中阅读有关此更改的更多信息:

问候 Chrome 扩展开发者!

如果您在扩展程序中使用 web_accessible_resources 功能,那么您需要了解一些重要消息。

我们最近修复了 Chrome M32 中的一个安全问题,即对由扩展程序重定向到本地资源的 URL 的任何请求都会成功,即使该本地资源未标记为网络可访问。

今后,除非资源被列为 Web 可访问,否则从 Web 源到扩展资源的导航将被阻止。请注意,特别是当页面请求公共资源时导航将被阻止,但扩展程序将该请求重定向到不可访问的资源。即使扩展程序拥有不可通过网络访问的资源,这仍然是正确的。

如果您的扩展程序访问本地资源,请确保将它们标记为 Web 可访问。您可以在此处了解更多信息:http : //developer.chrome.com/extensions/manifest/web_accessible_resources.html

有关更多信息,请参阅此错误:(https://code.google.com/p/chromium/issues/detail?id=313155