【问题标题】:How to serve files from a Chrome extension under different origin?如何从不同来源的 Chrome 扩展程序提供文件?
【发布时间】:2016-02-26 04:40:34
【问题描述】:

我想提供来自不同于 Chrome 扩展程序本身来源的 Chrome 扩展程序的文件。理想情况下,我希望来源是多个并且可以配置。这个想法是,然后我可以将它们加载到 <iframe> 中,并且它们有自己的独立起源。

【问题讨论】:

    标签: google-chrome-extension same-origin-policy


    【解决方案1】:

    使用不带allow-same-origin 指令的sandboxas an iframe attributevia the "sandbox" key in the manifest file)。然后该页面将具有唯一的来源(并且它无法访问特定于扩展来源的 API)。

    【讨论】:

    • 抱歉,如果我的问题不清楚(我应该更新它吗?),但我想要受控来源。因此,添加到页面的多个 iframes 扩展将共享。 sandbox 的问题在于它具有唯一的来源,并且您不能创建另一个具有相同唯一来源的 iframe
    • @Mitar 这不是真的受支持。你的用例是什么?
    • 我想做一个扩展,允许网络应用程序将一些内容存储到一个特殊的客户端唯一源中,以便他们可以在iframe 中显示它,但应用程序本身不能不再访问内容(因为它来自不同的来源)。这很容易通过使用扩展的来源来完成。但是所有网络应用程序都共享相同的扩展名。我希望每个应用程序都可以有自己的存储内容集来源。
    • @Mitar 然后,您可以按照我的建议使用沙盒 iframe,并注入一个脚本,该脚本公开一个处理原始特定功能的 API。或者开发一个应用程序并使用<webview>(注意:这仅在应用程序中支持,在扩展程序中不支持)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-05
    • 2022-06-15
    • 1970-01-01
    • 2017-06-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多