首页 > 解决方案 > 将文件从 Angular 8 上传到 .NET Core API 时出现 CORS 问题

问题描述

我正在尝试将 Angular 8 应用程序中的表单(几个字段以及多个文件附件)上传到 .NET 核心(启用 CORS)。当我们不发送文件且没有“Multipart/Form-data”内容类型时,可以从 Angular 访问 .net 核心中的 POST API,在这种情况下,字段可用但文件不可用。

如果我将 Content-Type 更改为“Multipart/Form-data”并将文件附加到 formdata angular 中,则会出现 CORS 问题。下面是我的代码:

角度:

const formData = new FormData();
const options = {
         headers: new HttpHeaders({
             'Content-Type': 'multipart/form-data',
             'Access-Control-Allow-Origin' :'*'
         })
     }
this.selectedFiles.forEach((f) => formData.append('files', f));}
formData.append('Name',"Test");
this.http.post(url,formData,options).subscribe();

.NET 核心:

[HttpPost]
        
        public object UploadData([FromForm] FormModel formModel)
        {
// save files and insert data in DB
}

标签: angulartypescriptasp.net-core

解决方案


推荐阅读