gpt4 book ai didi

javascript - 开发浏览器扩展时的同源策略问题

转载 作者:行者123 更新时间:2023-12-01 00:45:15 25 4
gpt4 key购买 nike

尝试开发一个简单的 Firefox 扩展。该扩展程序采用特定网站并将页面嵌入到另一个网页的预定义位置。所以两个不同的域,彼此根本不相关。我知道同源策略不适用于浏览器扩展,并且我查看了其他 stackoverflow 问题,例如 this one以及here .

我的问题是我在 manifest.json 文件中添加了 permissions 标签,如下所示:

“权限”:[“*://www.abcwebsite.com/*”]

其中 abcwebsite.com 是我尝试嵌入的网站。我还将这两个网站添加到 content_scripts 内的 "matches" 标记中。

但是,我仍然无法访问嵌入式网站的 DOM 结构。

我可以很好地嵌入整个网站,但我试图只嵌入页面的特定部分。我不知道我哪里错了,

最佳答案

The extension takes a particular website and embeds the page in a predefined spot in another webpage

您没有跳过 same-origin-policy ,因为一个源加载了另一个源的内容。执行客户端代码的浏览器使用或不使用扩展应用相同的策略。一般概念是,除非共享的源明确允许另一个源,否则您不能在两个源之间共享资源。

后台脚本,否则

can make XHR requests to any hosts for which they have host permissions.

source

因此,如果可能的话,这个问题的解决方案是一个背景问题。

关于javascript - 开发浏览器扩展时的同源策略问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57445516/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com