2

如您所知,即将到来的 91 版 Chrome 将要求网站为使用 SharedArrayBuffers 的网站启用跨域隔离。

遵循谷歌的建议 ( https://web.dev/cross-origin-isolation-guide/?utm_source=wnc_20146204&utm_medium=gamma&utm_campaign=wnc_20146204&utm_content=msg_110404023&hl=en )

我已经设置了所需的标题: Cross-Origin-Opener-Policy: same-origin 和 Cross-Origin-Embedder-Policy: require-corp

但在那之后,Google Adsense 广告就没有显示在我的网站上。确切地说,应该显示广告的位置只会出现一个空框。

SharedArrayBuffers 不是由我自己的应用程序使用,而是由我无权访问的第三方库使用,因此我无法避免使用 SharedArrayBuffers。

总之,如果我不启用跨域隔离,那么我的网站将停止在 Chrome 91 中运行,如果启用它,那么 Google 广告将不会显示。

我已经在 Google Adsense 社区中发布了这个问题,但我没有得到任何答案。我希望有人可以在这里给我一些建议。

谢谢!

4

1 回答 1

0

如果您不是SharedArrayBuffer自己使用,并且您已经确定了实际使用它的第三方资源提供者,请要求他们解决问题。你不需要自己启用跨域隔离,除非使用SharedArrayBuffer对你来说是必不可少的。

在许多情况下,第三方的使用SharedArrayBuffer是微不足道的,可以忽略,因为相同的代码一直SharedArrayBuffer在过去不支持的浏览器上运行。

于 2021-04-01T08:59:02.053 回答