一张base64图片格式的图片,将其转化成blob而后上传到服务器

需要形容

一张base64图片格式的图片,将其转化成blob而后上传到服务器,后盾跟接管表单文件上传一样的形式去解决改图片

实现

// url 示意base64的字符串, name示意文件名,附加到blob上的那么、上uploadFile(url, name) {            // 以逗号划分类型和内容            let arr = url.split(',')            // 截取类型            let mime = arr[0].match(/:(.*);/)[1]            // 将base64格局的字符转回本来的字符格局            let bstr = window.atob(arr[1])            let n = bstr.length,            u8arr = new Uint8Array(n)            while (n--) {                // 将ascll码值贮存到无符号数组中                u8arr[n] = bstr.charCodeAt(n)            }            // 转化blob            let blob = new Blob([u8arr], { type: mime })            blob.lastModifiedDate = new Date()            blob.name = name            // 结构FormData            let formData = new FormData();            formData.append('time', moment().format('YYYYMMDD'))            formData.append('file', blob)            console.log(blob)              // 发送申请            stationData.uploadImg(formData).then(res => {                console.log('aasad', res)            })        },

总结


这里是通过blob能够接管一个ArrayBuffer的参数的模式去创立一个blob