var bl = window.URL.createObjectURL(xhr.response)
var zip = new JSZip();
zip.file(bl);
zip.generateAsync({type:"blob"})
.then(function(content) {
saveAs(content, "example.zip");
}, function(err){
console.log(err)
})
我的XmlHttpRequest从图像文件中获得了“blob”类型的响应。如何将blob图像文件转换为图像文件(可能是.gif,.jpg,.bmp,.jpg-large等),以便我可以制作一个没有错误的zip文件?
答案 0 :(得分:1)
使用URL.createObjectURL
,您可以获得blob的网址(例如blob:https://stackoverflow.com/e62c177a-b4b1-4945-8e13-53bb5a3c8f34
)。 JSZip没有解决它,但您可以直接使用blob(在您的情况下为xhr.response
)。正如Patrick Evans在评论中所说,你还需要提供文件名。
var zip = new JSZip();
zip.file("my_file.ext", xhr.response);
zip.generateAsync({type:"blob"})
.then(function(content) {
saveAs(content, "example.zip");
}, function(err){
console.log(err)
});