我已经为文件上传制作了一个简单的拖放指令,但我主要担心的是我需要支持IE8 / 9,所以考虑到不支持FormData,我该如何进行多文件上传不使用FormData
对象?
提前致谢。
修改 我正在尝试做的是:
$scope.uploadFile = function () {
var upload = $http.post('awesomeFileThatWantsMultipleFilesUploaded.php',
angular.element(document.getElementsByClassName('droppable')).scope().files,
{withCredentials: true,
headers: {'Content-Type': undefined },
transformRequest: angular.identity})
.success(function (response) {
});
return upload;
}
但问题是,当浏览器不支持FormData
时,我将files
变量初始化为array
,然后我将每个文件推送到变量。如果文件是FormData
,则可以使用。
答案 0 :(得分:0)
不要手工制作。相当凌乱,你总会有问题。你可以使用polyfill for formdata,比如moxie,我可以使用角度angular-file-upload甚至可以从浏览器上传到S3(here)
如果您想手动完成,请检查这些存储库中的代码并找到一些想法