首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有可能在普通页面中嵌入一个跨源隔离的iframe?

是否有可能在普通页面中嵌入一个跨源隔离的iframe?
EN

Stack Overflow用户
提问于 2021-09-25 03:04:12
回答 2查看 1.1K关注 0票数 3

(对于一些人来说,这个问题可能等于“如果我不能在我的主站点中使用sharedArrayBuffer,我可以打开一个iframe并在iframe内使用sharedArrayBuffer吗?)

所以我想在我的站点中使用一些带有sharedArrayBuffer的wasm,但是使站点跨源隔离是不切实际的,所以我做了另一个站点https://my-wasm-function.app,它是跨源的-隔离的。我希望使用它作为一个iframe,并与我的主要网站通过postMessage

但是,我发现一旦它作为一个iframe嵌入,它就失去了隔离状态。

类似的问题是在2021年3月被问到的,当时公认的答案是“不”。然而,最近的一个谷歌博客似乎意味着不一样,所以我想再问一次。

博客中有一些关于如何隔离iframe的模糊说明,其中之一是添加标题Cross-Origin-Resource-Policy: cross-origin (我认为是在COOPCOEP之上),我尝试过,但没有成功。另一个是像这样打开iframe:<iframe allow="cross-origin-isolated">,我也试过了,也没有工作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-09-28 14:17:19

答案是否定的。从那篇博客的作者那里得到确认。

还不太清楚<iframe allow="cross-origin-isolated">实现了什么,如果父服务器被隔离,而iframe的头不在您的控制范围内,它也许可以在不设置头的情况下隔离一个iframe,但是如果父服务器不是,它肯定不会保持iframe的隔离。博客作者说他会添加一些澄清。

票数 2
EN

Stack Overflow用户

发布于 2022-03-14 10:32:57

换句话说,如果我不能在我的主站点中使用sharedArrayBuffer,我可以打开一个iframe并在iframe中使用sharedArrayBuffer吗?

不是的。父母不能向iframe传达一个能力是不具备的。

cross-origin-isolated是一种功能。它支持几个特性,如:

  • 在两个员工之间共享一个SharedArrayBuffer。
  • 高清晰度定时器。

从2022年3月开始:当顶级文档使用COOP:same-originCOEP:require-corpCOOP:credentialless时,您就可以获得该功能。对于iframe,家长还必须使用“允许=‘跨源隔离’”向下传递能力。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69322834

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档