javascript – 如何提取zip文件并呈现内容,客户端
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 如何提取zip文件并呈现内容,客户端,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1106字,纯文字阅读大概需要2分钟。
内容图文
我有一个zip文件位于http://my-website.com/user-site.zip.这个zip文件包含一堆html,css和javascript文件,当提取时,看起来像这样(确切内容未知):
index.html
js/
script.js
css/
style.css
我希望能够在浏览器中下载后在例如iframe中查看此网页.
现在我的方法看起来像这样:
>从服务器下载zip文件.
>使用zip.js提取内存中的文件.
>使用createObjectUrl(解释为here)为每个资产创建URL.
>将iframe指向index.html生成的url.
这几乎是有效的,除了一个问题. createObjectUrl生成的url几乎是随机的,因此index.html无法解析对其他资源的引用.我怎么能绕过这个?
解决方法:
非常好的问题!我现在正坐在这里思考这个问题!您可以做的一件事是创建一个JavaScript对象/数组来“映射”文件及其路径,以及它们创建的对象URL.然后使用JavaScript将相对路径替换为绝对对象URL.除非……你无法获得文件的路径.
如果是这种情况,您可能感兴趣的JavaScript库将是JSZip,它可以为ZIP提供文件路径.
对于您的地图,您可以执行以下操作(在从根目录中删除JSZip路径中的必要部分之后):
var map = [
{"relativePath":"css.css","absolutePath":*Object URL Goes Here*}
];
然后遍历映射中的每个条目,并用给定文件中的absolutePath [x]替换relativePath [x]的每个实例,无论它是文件的原始文本还是iframe的innerHTML.
希望这可以帮助!
内容总结
以上是互联网集市为您收集整理的javascript – 如何提取zip文件并呈现内容,客户端全部内容,希望文章能够帮你解决javascript – 如何提取zip文件并呈现内容,客户端所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。