工人、网络或服务;无论如何要访问窗口对象?

2024-03-07

我正在尝试在 webOS 中利用 Web Worker 来进行标牌应用程序,因为存在一个奇怪的错误,即使用 SCAP API 执行文件下载之间的时间呈指数级减慢。

我的想法是尝试网络工作人员下载文件,希望这意味着问题会消失/应用程序会更快一些。

然而,SCAP API 是基于 Cordova 的,而且 Cordova 似乎需要访问 Window 对象,而 Web Worker 似乎无法做到这一点(经过几个小时的尝试,我终于发现了!)

我的问题是,有没有办法让网络工作者与 Cordova 一起工作?

是否有其他类型的工作人员可以访问窗口对象?

基本上,有什么解决办法吗?或者尝试是10​​0%不可能且徒劳的吗?


您不能使用 Service Worker 来控制任何window object.

服务工作人员在工作人员上下文(而不是浏览器上下文)中运行;因此它没有 DOM 访问权限 https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API.

因为像这样的事情postMessage() is a window函数,以及window是 DOM 的一部分,你不能window.postMessage()来自服务人员。不幸的是,client.postMessage()仅适用于来自同一域源(和服务工作线程“范围”)的浏览器上下文(选项卡、窗口等)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

工人、网络或服务;无论如何要访问窗口对象? 的相关文章

随机推荐