EnableCors C# .NET Core 3

mkk*_*kkl 3 c# cors asp.net-web-api asp.net-core

我正在处理 C# API 并从我的前端执行 GET 请求,为此我需要在我的 API 中启用 cors,但我似乎无法做到!

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

dotnet add package Microsoft.AspNetCore.Cors --version 2.2.0
Run Code Online (Sandbox Code Playgroud)

但是在执行 GET 请求时,我仍然收到 cors 错误。

尝试使用[EnableCors]注释时,我收到一条错误消息,提示“找不到 EnableCorsAttribute”...

我也添加了

app.UseCors();
Run Code Online (Sandbox Code Playgroud)

到我的 Startup.cs 但没有运气。

任何帮助将不胜感激!

编辑 - Startup.cs 粘贴在这里: https : //pastebin.com/pCLSh3Tf

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

小智 5

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

services.AddCors(options =>
        {
            options.AddPolicy("CorsPolicy",
                builder => builder.AllowAnyOrigin()
                .AllowAnyMethod()
                .AllowAnyHeader());
        });
Run Code Online (Sandbox Code Playgroud)

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

app.UseCors("CorsPolicy");
Run Code Online (Sandbox Code Playgroud)

如果您想使用 cors,您可以编辑策略,因为这基本上是禁用它。