我有一个网站,example.com
我正在为所有外部资源提供服务cdn.example.com
。所以在我的 HTML 页面中,example.com
我有类似的内容:
<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 上失败并Failed to load script: http://cdn.example.com/script.js (nsresult = 0x805303f4)
出现错误。它适用于 Safari 6 和 Chrome 22。
看来问题是因为起源不同。脚本的有效来源是example.com
并且cdn.example.com
不匹配。这似乎是一个错误,因为不是 CORS 没有设置document.domain
有帮助(或者至少我无法通过玩它来使其工作)。有什么办法让它工作吗?