因此,SharedArrayBuffer 最近仅限于跨域隔离页面作为安全修复。
我们有一个依赖于 SharedArrayBuffer 的工具,我通过将它移动到一个去掉所有其他站点 UI 的准系统页面并发送以下标头来重新设计它以再次工作:
Cross-Origin-Embedder-Policy: require-corp
Cross-Origin-Opener-Policy: same-origin
尝试将它加载到成熟网站的 iframe 中会给我带来控制台错误SharedArrayBuffer will require cross-origin isolation as of M92
,然后是ReferenceError: SharedArrayBuffer is not defined
- 与我在跨域隔离最小页面本身上的工具之前得到的相同。
我试图在其中包含 iframe 的页面不是跨域隔离的。如果不是不可能,那将是非常困难的。我根本不需要从父页面与 iframe 交谈,这只是一种方便/风格的东西。目前的生产解决方案只是将用户链接到新窗口中的最小跨源工具页面,但这很尴尬。
我希望有一些 iframe沙盒属性的组合或者可以使这项工作正常进行的东西?我为此奋斗了几个小时。
据我所知,这可能不可行。