HTML5 文件 API readAsBinaryString 读取的文件比磁盘上的文件大且不同


如果你将你的文件作为一个二进制字符串读取,并且手动创建 multipart/ form-data 请求,则可能会发生这种情况。

你需要尝试并使用 xhr.send(File),并且绕过 xhr 进度事件,该事件在所有列表项已经创建完成后触发。

示例

以下是我们上传的功能 −

function display(url, files) {
   var myForm = new FormData();
   for (var j = 0, file; file = files[j]; ++j) {
      myForm.append(file.name, file);
   }
   var xhr = new XMLHttpRequest();
   xhr.open('POST', url, true);
   xhr.onload = function(e) { ... };
   xhr.send(formData);
}

更新于: 25-6-2020

111 浏览次数

开启你的职业生涯

完成课程认证

开始
广告