我正在尝试使用更新的Fetch api将文件集合发布到后端C#。
let postFilesTask = fetch('/Home/Upload', {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'multipart/form-data'
},
body: formData
})
formData的格式如下:
var acp_file = (document.querySelector("[name=acp]") as HTMLInputElement).files;
var ava_file = (document.querySelector("[name=acp]") as HTMLInputElement).files;
var formData = new FormData();
if((acp_file as FileList).length > 0 ){
formData.append("acp_file" ,(acp_file as FileList)[0] );
}
if((ava_file as FileList).length > 0 ){
formData.append("ava_file" ,(ava_file as FileList)[0] );
}
我的问题在C#控制器上。我无法获得该文件。使用旧的XMLHttpRequest对象,我看到Request.Form.Files
被填充。但是,使用Fetch api我无法保存文件。尽管HttpContext.Request.Body
似乎具有包含文件内容的流。
任何建议将不胜感激。