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 22:17:49 浏览: 5868
### 回答1:
从2021年7月左右开始,SharedArrayBuffer将需要跨源隔离。请参阅https://developer.chrome.com/blog/enabling-shared-array-buffer/了解更多详情。
### 回答2:
SharedArrayBuffer是用于在多个JavaScript线程之间共享数据的Web API。该API使得在Web Workers中处理更大的数据集更加容易。然而,由于安全问题,浏览器厂商已经慢慢地限制了其使用。
在Chrome 91之后的版本,如果未启用跨源隔离,则SharedArrayBuffer将会被禁用。这个更改将会在Chrome 92中实现,大约在2021年7月份。跨源隔离是一种安全机制,用于隔离不同网页或脚本之间的数据和运行环境。被隔离的脚本无法共享中间结果,因此,跨源隔离限制了SharedArrayBuffer的使用。
跨源隔离将会更改与SharedArrayBuffer的交互方式。新的SharedArrayBuffer API将在创建时要求开发人员标记其为要求跨源隔离,这样才能正常使用SharedArrayBuffer。这意味着在开发或更新Web应用程序时,开发人员要注意这个限制。
对于已有的Web应用程序,如果使用了SharedArrayBuffer,开发人员需要遵循更严格的规则,以遵循这个限制。这将对一些Web应用程序造成影响,特别是那些使用了共享内存的应用程序。开发人员需要根据Chrome代码库中的指南进行调整。
总之,这个更改对Web应用程序开发人员和用户都有影响。对于开发人员,他们需要知道这个限制,以便正确地使用SharedArrayBuffer。对于用户,这将提高Web应用程序的安全性和性能。因此,开发人员和用户都应该注意这个更改,并且准备采取必要的措施以确保其Web应用程序的功能和安全。
### 回答3:
SharedArrayBuffer是一种在Web Worker中共享数据结构的机制,可以提高Web应用的性能和运行效率。然而,SharedArrayBuffer的安全性和隐私性问题一直备受争议。由于它可以在多个线程之间共享内存,恶意用户可以利用它来进行攻击,例如在Web Workers中窃取用户的敏感信息。为了解决这些问题,SharedArrayBuffer在很长一段时间内被禁用。
现在,Chrome浏览器宣布在m92版本中采取一项重大变化,规定只有在开启跨域隔离(Cross-Origin Isolation)的情况下,才能使用SharedArrayBuffer。这意味着,浏览器会为每个页面创建一个独立的网页进程,防止不同页面之间的共享和干扰。这种措施将极大地提高SharedArrayBuffer的安全性和隐私性,保障用户的数据安全。
然而,开启跨域隔离也会带来一些问题。一些第三方库或插件可能无法正常工作,因为它们可能需要访问其他页面的资源。另外,跨域隔离还会增加开发人员的工作量和学习成本,因为他们需要了解并遵守新的安全标准和规范。此外,跨域隔离对于电池寿命和性能也会有一定的影响。
总之,SharedArrayBuffer的开启跨域隔离是一个必要的措施,它可以提高Web应用的安全性和隐私性。但是,这也提醒我们,在使用SharedArrayBuffer的同时,必须时刻注重数据的保护和安全,防止恶意攻击。同时,我们也要适应跨域隔离的要求,提高我们的开发能力,更好地保障用户的权益。