worker.js?libname=waaccelerateworker.js:1 [deprecation] sharedarraybuffer will require cross-origin isolation as of m92, around july 2021. see https://developer.chrome.com/blog/enabling-shared-array-buffer/ for more details.
时间: 2023-05-31 20:18:50 浏览: 424
### 回答1:
这条警告意味着在2021年7月左右,从m92版本开始,共享数组缓冲区将需要跨源隔离。更多详细信息,请参阅https://developer.chrome.com/blog/enabling-shared-array-buffer/。
### 回答2:
这段信息是一条关于Chrome浏览器即将停用共享内存缓冲区(shared array buffer)的通知。从m92版本开始,在不开启跨域隔离的情况下,共享内存缓冲区将被禁用。这一变更计划在2021年7月左右实施。开发者可以参考链接中的详细说明了解如何启用跨域隔离以及如何迁移已经存在的共享内存缓冲区代码。
共享内存缓冲区是一种高效的在多个Web Worker线程之间共享数据的机制。它的工作原理是将数据存储在二进制数据缓冲区中,不同的Worker线程可以同时读取和写入这个缓冲区,这种机制在一些需要高吞吐量和实时性的场合非常有效。但是,由于存在安全风险,Chrome浏览器决定从m92版本开始禁用非跨域隔离下的共享内存缓冲区。
跨域隔离 (Cross-Origin Isolation) 是一种以最小化Web页面之间安全隐患为目的的隔离机制,它可以对来自不同源的页面进行隔离,使得这些页面之间的信息难以被恶意的脚本窃取、篡改、伪造等。开发者需要在页面上设置允许跨域隔离的标志,并对代码进行修改以兼容新的共享内存缓冲区规则。
总之,Chrome浏览器将在不久的将来禁用非跨域隔离下的共享内存缓冲区。这对于依赖共享内存缓冲区的Web Worker应用程序会带来一定的挑战,但开发者可以参考链接中的文档来了解如何迁移代码以适应新的规则。
### 回答3:
这个警告信息说明了chrome浏览器的一个行为变化,从2021年7月左右开始,使用sharedarraybuffer将需要开启跨源隔离(即同源策略不允许跨域资源共享,需要额外的设置来允许)。如果没有开启跨源隔离,chrome浏览器可能会报错或禁用sharedarraybuffer的使用。
sharedarraybuffer是一种能够高效地在Web Worker中进行数据交换的机制。Web Worker是一种可以在后台运行的JavaScript线程,可以避免主线程卡顿,提高页面性能。而sharedarraybuffer则是一种特殊的JavaScript对象,可以在多个Web Worker之间共享数据,提高多线程计算性能。
开启跨源隔离的方法可以参考上面的链接,主要是为了保证系统的安全性。在JavaScript中,跨域资源访问容易被利用进行CSRF攻击和XSS攻击,跨源隔离可以在保证多线程计算性能的同时,防止这些攻击的发生。
总之,如果你在Web Worker中使用了sharedarraybuffer,建议了解一下chrome浏览器的这个变化并做好跨源隔离的设置。