IE11的网络加密位于window.crypto
内,而对于Firefox或Chrome,则可在window
中访问。
Web Workers无法访问crypto
上下文,但幸运的是,Chrome和Firefox还在Web Worker上下文中公开了this.crypto
变量(因此,在全局级别,您可以使用{ {1}}访问Web Worker中的Web Crypto套件。但是,似乎IE11在其Web Worker上下文中不公开this.msCrypto
。
这是对的吗?有没有办法在IE11 Web Worker中使用Web Crypto?
答案 0 :(得分:3)
“支持Web Worker中的Web Crypto API”是Microsoft开发人员网站https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/7607496/上的一个未解决的问题
Web Crypto API在Web Worker中不可用。 “self.crypto”和“self.msCrypto”都是在工作者上下文中未定义的。
我猜IE11也是同样的问题,但我还没找到文档
在此thread中建议了一种解决方法,从Web工作线程更改为主线程以执行WebCrypto操作。假设性能将会丢失,编程肯定会很复杂