html5 image blob读取,data:image data url 文件转为Blob上传后端的方法

  • Post author:
  • Post category:其他


一些场景,比如canvas获取的图片,或者微信开发sdk返回的图片格式是data:img格式的,我们需要上传到服务器上,那就需要进行转化。

将dataurl转成blob

// base64 转 blob

datauritoblob(datauri) {

// convert base64/urlencoded data component to raw binary data held in a string

let bytestring;

if (datauri.split(‘,’)[0].indexof(‘base64’) >= 0) {

bytestring = atob(datauri.split(‘,’)[1]);

} else bytestring = unescape(datauri.split(‘,’)[1]);

// separate out the mime component

const mimestring = datauri

.split(‘,’)[0]

.split(‘:’)[1]

.split(‘;’)[0];

// write the bytes of the string to a typed array

const ia = new uint8array(bytestring.length);

for (let i = 0; i < bytestring.length; i++) {

ia[i] = bytestring.charcodeat(i);