图片base64转文件 并以formdata传给后台

本文详细介绍了如何将Base64格式的图片转换为Blob对象,并通过FormData传递给后台。涉及到的关键技术包括Blob的构建、Uint8Array的使用以及atob方法在解码Base64字符串中的应用。示例代码展示了整个转换过程,对于前端开发者处理图像上传具有实践指导意义。
摘要由CSDN通过智能技术生成

base64格式的图片转文件 并以formdata传给后台

相关概念

Blob

Blob,Binary Large Object缩写,二进制大对象,表示一个不可变、原始数据的类文件对象。
单位为字节(byte),一个字节8位长,为0~255

Uint8Array

8位无符号整型数组

atob() 方法

atob() 方法用于解码使用 base-64 编码的字符串
base-64 编码使用方法是 btoa() 。

代码

let binary = atob(base64.split(',')[1]);
let array = [];
for (let i = 0; i < binary.length; i++) {
    //将binary字符串转为Unicode码点
	array.push(binary.charCodeAt(i));
}
//Blob构造函数的第一个参数为ArrayBuffer、ArrayBufferView、Blob、DOMString等对象构成的Array,或者其它类似对象的混合体
var blob = new Blob([new Uint8Array(array)], {
		type: "image/jpeg"
});
var formpost = new FormData();
formpost.append("image", blob, Date.now() + ".jpg")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值