文件

149 阅读1分钟

类型

二级制家族:blob:类文件类型  arraybuffer  和 buffer(node.js中)

file:文件类型 (File 对象是特殊类型的 Blob)

base64:二进制数据编码

文件下载

 1. 使用ajax请求获取blob对象数据生成本地url,创建添加a标签download属性下载文件

如若获取到是二进制data数据可以使用如下转化为blob再操作

base64 =>blob

base64 =>file 

二进制数据类型:使用**new Blob([res.data],{ type: 'image/jpg'})**转化为blob数据类型

                           使用 **new File () ** 转化为file文件数据类型

2. 使用fetch(url)  res.blob()  .then()通过fetch返回response流,使用blob方法返回使用Blob解决的promise。

response.blob().then(function(myBlob) {
  // do something with myBlob
});

数据相互转换

blob => file :用于文件上传

blob = > base64 :图片预览

file = > blob :用于文件上传

filb = > base64 :图片预览

使用

URL.createObjectURL():将blob类型或者file类型转化为url地址

  我们把图像文件的内容直接写在了HTML 文件中

base64的数据图片直接写入

展示文件

iframe

vue-pdf

图形

canvas

svg