如何处理使用Base64对图片编码后导致post请求内容超出长度限制的问题

版权声明:本文为博主原创文章,未经博主允许不得转载。如有写的不恰当或者不正确的地方,请指正,欢迎与我讨论。如需要查看博客中的源代码,请联系博主QQ:1477517404 https://blog.csdn.net/hfutzhouyonghang/article/details/81394799

我的方案是将base64的字符串装换成文件,在后端使用文件来接收。具体代码见我的另一篇博客。html5 使用canvas画布对本地视频进行截图并上传至服务器 base64转文件以及上传的代码如下:

// 上传图片

    function upload(image) {
        var imgFile=dataURLtoFile(image,"img.png");
        var xhr=new XMLHttpRequest();
        var fd=new FormData();
        xhr.open('POST','/springStudy/user/multifiles');
        fd.append("multipartFile",imgFile);
        xhr.send(fd);
        console.log('上传json!')
    }

    //将图片Base64 转成文件

    function dataURLtoFile(dataurl, filename) {
        console.log("转文件")
        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});
    }

猜你喜欢

转载自blog.csdn.net/hfutzhouyonghang/article/details/81394799