ajax上传图片,偶尔会出现后台保存的图片有错误或者已损坏,请问可能是什么原因造成的?
我是把固定区域截图后生成图片上传后台,大部分时候都没问题,偶尔会出现图片有错,打开图片的时候报错:因存在错误而无法显示。
代码如下:
function imgUpload(img2,id) {
html2canvas($("#imgArea")[0]).then((canvas) => {
var img1 = canvas.toDataURL();
var data = new FormData();
data.append("ImgFile", dataURLtoFile(img1, "authorize.png"));
data.append("ImgFile2", dataURLtoFile(img2, "authorizeName.png"));
var ajaxRequest = $.ajax({
type: "POST",
url: "/api/authorize/save?id=" + id,
contentType: false,
processData: false,
data: data
});
ajaxRequest.done(function (param) {
});
})
}
function dataURLtoFile(dataurl, filename) {
var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1],
bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
while (n--) {
u8arr[n] = bstr.charCodeAt(n);
}
return new File([u8arr], filename, { type: mime });
};
回答
js里把图片转成base64字符串上传
THE END
二维码