前端base64编码格式图片转换为file类型并上传

将前端的base64编码格式图片转换为file文件,方便传输到后台进行处理。

/*将base64转换为file继承自blob*/
function base64ToBlob(dataurl,filename){
    var arr=dataurl.split(',');
    var mime=arr[0].match(/:(.*?);/)[1];/*文件类型*/
    var bstr=atob(arr[1]);
    var n=bstr.length;
    var u8arr=new Uint8Array(n);
    while(n--){
        u8arr[n]=bstr.charCodeAt(n);
    }
    return new File([u8arr],filename,{type:mime});
}

将转换的file文件类型图片通过formData对象添加进表单进行传输,使用Ajax技术实现无刷新上传。

var forms=new FormData();
forms.append('file',file);
$.ajax({
    type:"POST",
    url:"http://localhost:8080/captureServlet",
    data:forms,
    processData:false,/*设置不处理数据*/
    contentType:false
});
posted @ 2022-10-22 15:47  稚终KINO  阅读(1713)  评论(0)    收藏  举报