Javascript获取API将文件发布到C#控制器

时间:2018-06-25 17:22:33

标签: c# model-view-controller .net-core fetch-api

我正在尝试使用更新的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似乎具有包含文件内容的流。

任何建议将不胜感激。

0 个答案:

没有答案