编程语言
首页 > 编程语言> > javascript – 如何从子域提供的脚本创建Web Worker?

javascript – 如何从子域提供的脚本创建Web Worker?

作者:互联网

我在example.com上有一个网站,我正在从cdn.example.com提供所有外部资源.所以在我在example.com的HTML页面中,我有类似的东西:

<script type="text/javascript" src="http://cdn.example.com/script.js"></script>

在我的脚本中,我想创建一个Web Worker,所以我这样做:

worker = new Worker("http://cdn.example.com/script.js");

但是在Firefox 16上无法加载脚本失败:http://cdn.example.com/script.js(nsresult = 0x805303f4)错误.它适用于Safari 6和Chrome 22.

似乎问题是因为origins differ.脚本的有效来源是example.com,而cdn.example.com与此不匹配.这似乎是一个错误,因为没有CORS没有设置document.domain帮助(或者至少我不能通过玩它来使它工作).有没有办法使它工作?

解决方法:

最后我在example.com网站上提供了一个简单的JavaScript代码,其中包含真正的网络代码:

importScripts('http://cdn.example.com/script.js');

然后通过指向它来创建Web worker.

标签:javascript,web-worker
来源: https://codeday.me/bug/20190704/1373410.html