将base64图片转换为file文件通过接口传递后端
1、方法
dataURLtoFile(dataurl, filename) {
//将base64转换为文件
var arr = dataurl.split(","),
mime = arr[0].match(/:(.*?);/)[1],
bstr = atob(arr[1]),
n = bstr.length,
u8arr = new Uint8Array(n);
while (n--) {
u8arr[n] = bstr.charCodeAt(n);
}
return new File([u8arr], filename, {
type: mime,
});
}
2、调用
var formData = new FormData();//这一步很重要
var photoFile = this.dataURLtoFile(this.form.static, "ces.jpg");//一个表示base64,一个表示名字
formData.append("file", photoFile);
ceshi(formData).then((res) => {//调用接口发送
console.log(res);
if (res.code == 0) {
this.form.fileId = res.content.id;
}
});