目的:blog类文件类型实现node文件上传
一般的文件上传是同过input文本框通过表单提交上传,可是在实际开发过程中会保存一下类文件类型的数据(这个说法不是很准确),可以通过其他方式转化问File类型进行上传——比如canvas、Scratch的文件保存
-
Blog转为File
将Blog类型转为File类型是通过 File 的构造函数实现
语法var myFile = new File(bits, name[, options]);
- bits
ArrayBuffer,ArrayBufferView,Blob,或者 DOMString 对象的 Array — 或者任何这些对象的组合。这是 UTF-8 编码的文件内容。 - name
USVString,表示文件名称,或者文件路径。 - options 可选
选项对象,包含文件的可选属性。可用的选项如下:
type: DOMString,表示将要放到文件中的内容的 MIME 类型。默认值为 “” 。
lastModified: 数值,表示文件最后修改时间的 Unix 时间戳(毫秒)。默认值为 Date.now()。
示例
var file = new File([“foo”], “foo.txt”, {
type: “text/plain”,
}); - bits
-
模拟表单提交
//创建formData对象 var formData = new FormData(); //添加键值添加通过构造函数创建的文件 formData.append("file", file) fetch(url,{ method: 'POST', body:formData