EnableCors C#.NET Core 3

时间:2019-10-17 12:38:48

标签: c# asp.net-core asp.net-web-api cors

我正在使用C#API并从前端执行GET请求,为实现这一点,我需要在我的API中启用cors,但我似乎做不到!

这是一个.NET Core 3 API,我尝试按照this教程进行操作,并且还尝试通过以下方式为其安装2.2 NuGet Package

dotnet add package Microsoft.AspNetCore.Cors --version 2.2.0

但是在执行GET请求时仍然出现cors错误。

尝试使用 [EnableCors] 批注时,出现错误消息,提示“找不到EnableCorsAttribute” ...

我还添加了

app.UseCors();

进入我的Startup.cs,但没有运气。

任何帮助将不胜感激!

编辑-Startup.cs粘贴在此处: https://pastebin.com/pCLSh3Tf

编辑-控制器粘贴在此处: https://pastebin.com/mUSfvNR0

2 个答案:

答案 0 :(得分:2)

不确定在Core 3.0中是否有任何更改,但是在2.2中,我会这样解决:将其添加到ConfigureServices

services.AddCors(options =>
        {
            options.AddPolicy("CorsPolicy",
                builder => builder.AllowAnyOrigin()
                .AllowAnyMethod()
                .AllowAnyHeader());
        });

还要确保在Configure方法中添加策略:

app.UseCors("CorsPolicy");

如果要使用cors,则可以编辑该策略,因为这实际上是将其禁用。

答案 1 :(得分:0)

在ConfigureServices的开头添加以下内容:

services.AddCors();

在配置开始时添加以下内容:

app.UseCors(x => x.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader());