【问题标题】:Error local file using ServiceWorker with Blob in the Internet Explorer (only)在 Internet Explorer 中将 ServiceWorker 与 Blob 一起使用时本地文件出错(仅限)
【发布时间】:2019-01-17 02:45:00
【问题描述】:

在 Javascript 中,当使用带有 blob 的服务工作者时,仅适用于 IE,当我对脱机文件 (c:\test.html) 使用非本地模式时,会发生错误。您可以使用以下代码进行模拟: new Worker(URL.createObjectURL(new Blob([""])));

在域内运行 IE(例如:http://localhost/index.html)可以正常工作。

如果它在物理物理内部(例如:C:\inetpub\wwwroot\index.html)在 IE 中运行,则会发生错误,它会显示“无效功能”。

在我的情况下,我的系统生成一个文件并将其下载给用户,之后用户在您的 PC 上物理打开它(离线),我不依赖互联网,以防即使 firefox 和 chrome 也能完美运行,只有在我获取文件并放入 IIS 并通过域(本地主机)访问时才能在 IE 中工作。

有人知道为什么会这样吗?

【问题讨论】:

    标签: javascript internet-explorer service-worker


    【解决方案1】:

    我可以通过从 url 中删除单词 'BLOB:' 来使其工作,仅适用于 IE。

    new Worker(URL.createObjectURL(new Blob([""])).replace('blob:',''));

    这在 http://localhost/ie.html 和 c:\inetpub\wwwroot\ie.html 都有效

    【讨论】:

    • 从您的上一篇文章中,我可以看到您已经找到了解决问题的方法。我建议您在 24 小时后将您自己的答案标记为已接受的答案,这可能会在未来帮助其他社区成员解决类似问题。感谢您的理解。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-06
    • 2013-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-31
    相关资源
    最近更新 更多