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