1

假设我的 html 文件来自http://foo.com/index.html,其中有一个http://bar.com/bar.js<script>的标签。在 bar.js 中,我想启动一个 URL 为http://bar.com/worker.js的 SharedWorker 。有没有办法实现这一点(也许像 jsonp 之类的东西)?

4

2 回答 2

0

如今,进行这种跨域访问的首选方法是使用 W3 CORS 规范。

跨域资源共享

但是,如果您不控制 bar.com 上的站点,这可能不适合您。如果你这样做了,那么 CORS 绝对是一个不错的选择,但如果 bar.com 由另一方运行,你可能需要求助于 JSONP,因为 CORS 依赖于站点发回特定的标头,授权你的浏览器下载你请求的资源。

于 2011-06-13T15:50:38.930 回答
0

这是我找到的解决方案:

  • 在函数内部编写脚本(可以是内部函数)
  • 使用 function.toString() 获取文本(删除函数声明和右大括号)
  • 将文本附加到 BlobBuilder 并获取 blob
  • 使用 window.URL.createObjectURL 将 blob 转换为 url
  • 为工人使用该网址
于 2011-06-14T15:15:49.003 回答