1. 前言
2. H5 将选择图片转 base64
2.1 使用 XMLHttpRequest 和 FileReader 实现图片转 base64
// H5端获取图片的base64
function getWebBase64 (filePath) {
return new Promise((resolve, reject) => {
let xhr = new XMLHttpRequest();
xhr.open('GET', filePath, true);
xhr.responseType = 'blob';
xhr.onload = function() {
if (this.status === 200) {
let fileReader = new FileReader();
fileReader.onload = function(e) {
resolve(e.target.result);
}
fileReader.onerror = reject;
fileReader.readAsDataURL(this.response);
}
}
xhr.onerror = reject;
xhr.send();
})
}
2.2 使用 fetch 和 FileReader 实现图片转 base64
// H5端获取图片的base64
function getWebBase64 (filePath) {
return new Promise((resolve, reject) => {
fetch(filePath).then(fetchRes => {
return fetchRes.blob()
}).then(data => {
let fr = new FileReader()
fr.onload = function(){
resolve(fr.result)
}