HTML Canvas toDataURL上传无法在iOS上运行

时间:2017-06-30 12:52:20

标签: html ios ipad canvas html5-canvas

我有将base64数据上传到服务器的问题。我首先将base64数据转换为blob并使用File API创建一个新文件,然后将其上传到服务器。问题是,此解决方案适用于桌面和移动设备上的chrome,但不适用于iOS Mobile Safari(最新版本)。我的流程如下所示。

canvas.toDataURL('image / jpeg') - > base64 - > blob - >文件

function dataURItoBlob(dataURI) {
        var byteString = atob(dataURI.split(',')[1]);
        var ab = new ArrayBuffer(byteString.length);
        var ia = new Uint8Array(ab);
        for (var i = 0; i < byteString.length; i++) {
            ia[i] = byteString.charCodeAt(i);
        }
        return new Blob([ab], { type: 'image/jpeg' });
    }

var base64 = canvas.toDataURL('image/jpeg', 0.8)
var file = new File([dataURItoBlob(base64)], "filename")
/* Standard ajax uploading goes here */

上传后,我在iOS上只获得了一个小的白色空白方块,但它在移动设备和桌面设备上都能正常运行。

所以我的问题是,为什么不在iOS上传工作?

0 个答案:

没有答案