为什么Safari会放弃对SharedWorker的支持?

时间:2015-02-03 23:05:04

标签: javascript html5 safari web-worker

为什么Safari放弃了对SharedWorker的支持?

是否有任何有效的polyfill使用例如localStorage和StorageEvent作为通信端口? (是的,垫片必须检测并重新创建主工人)

3 个答案:

答案 0 :(得分:2)

我无法找到SharedWorker的任何polyfill。

似乎可以通过跨工作人员实现基于StorageEvent的通信端口来创建一个。缺点是StorageEvents不能为WebWorkers移植,并且您必须在每个浏览器选项卡上维护状态,并知道何时快速打开/关闭每个主工作者。

答案 1 :(得分:2)

直接来自其中一位WebKit工程师:

  

共享Web工作者的实施是不可取的   对发动机的限制。它从未获得任何采用。

来源here

答案 2 :(得分:-3)

由于Safari上的safari默认行为阻止了第三方Cookie的跟踪。

如果safari允许我们使用SharedWorker,则开发人员(Google或跟踪公司)可以使用它来访问不同窗口标签之间的标识。

这就是为什么safari会放弃SharedWorker的原因,有趣的是,它支持WebWorker但不支持SharedWorker


这是我的猜测,而不是官方的原因。