1.file转base64
getBase64(file) {
let reader = new FileReader();
reader.readAsDataURL(file); //file转成base64
reader.οnlοad=function(){ //文件读取成功时触发
return reader.result
}
}
2.base64转bold
const blob = this.dataURLtoBlob(res)
dataURLtoBlob(dataurl) {
let arr = dataurl.split(',')
let mime = arr[0].match(/:(.*?);/)[1]
let bstr = atob(arr[1])
let n = bstr.length
let u8arr = new Uint8Array(n)
while (n--) {
u8arr[n] = bstr.charCodeAt(n)
}
return new Blob([u8arr], {
type: mime
})
}
3.bold=>arrayBuffer=>Buffer
const reader = new FileReader()
reader.readAsArrayBuffer(blob);// // bold转arrayBuffer
reader.onload = e =>{
//arrayBuffer转Buffer
const buffer = this.toBuffer(e.target.result);
},
toBuffer(ab) {
var buf = new Buffer(ab.byteLength);
var view = new Uint8Array(ab);
for (var i = 0; i < buf.length; ++i) {
buf[i] = view[i];
}
return buf;
},