使用javascript的方式:
var data = new FormData();
$.each($("input[type='file']")[0].files, function(i, file) {
data.append('file', file);
});
$.ajax({
type: 'POST',
url: '/your/url',
cache: false,
contentType: false,
processData: false,
data : data,
success: function(result){
console.log(result);
},
error: function(err){
console.log(err);
}
})
如果您多次调用 data.append('file', file),您的请求将包含一个文件数组。
来自 MDN 网络文档:
“接口的方法将新值追加到对象内的现有键上,或者如果该键尚不存在,则添加该键。t 和 之间的区别在于,如果指定的键已经存在,则将使用新值覆盖所有现有值,而会将新值追加到现有值集的末尾。append()
FormData
FormData
FormData.se
append()
FormData.set
append()
我自己使用node.js和多部分处理程序中间件multiter获取数据如下:
router.post('/trip/save', upload.array('file', 10), function(req, res){
// Your array of files is in req.files
}