IE11的Web Crypto位于window.msCrypto内部,而对于Firefox或Chrome,它可以在window.crypto中访问.
Web Workers无法访问窗口上下文,但幸运的是,Chrome和Firefox还在Web Worker上下文中公开了crypto变量(因此,在全局级别,您可以使用this.crypto访问Web中的Web Crypto套件工人).但是,似乎IE11不会在其Web Worker上下文中公开this.msCrypto.
那是对的吗?有没有办法在IE11 Web Worker中使用Web Crypto?
最佳答案
“支持Web Worker中的Web Crypto API”是Microsoft开发人员站点https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/7607496/上的一个未解决的问题
The Web Crypto API is not available inside a Web Worker. Both “self.crypto” and “self.msCrypto” are undefined inside a worker context.
我猜IE11也是同样的问题,但我没有找到文档
在此thread中建议了一种解决方法,从Web工作线程更改为主线程以执行WebCrypto操作.假设性能将会丢失,编程肯定会很复杂