EnableCors C # .NET Core 3 - PullRequest
       33

EnableCors C # .NET Core 3

0 голосов
/ 17 октября 2019

Я работаю над C # API и выполняю GET-запрос от моего интерфейса, и для этого мне нужно включить cors в моем API, но я не могу этого сделать!

ЭтоAPI .NET Core 3, и я попробовал следовать этому учебнику, а также попытался установить пакет 2.2 NuGet для него через:

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

Но я все еще получаю ошибку cors при выполнении моего запроса GET.

При попытке использовать аннотацию [EnableCors] я получаю сообщение: "Не удалось найти атрибут EnableCorsAttribute" .. .

Я также добавил

app.UseCors();

к своим файлам Startup.cs, но безуспешно.

Любая помощь будет принята с благодарностью!

Правка - Startup.cs вставлен сюда: https://pastebin.com/pCLSh3Tf

Правка - Контроллер вставлен здесь: https://pastebin.com/mUSfvNR0

Ответы [ 2 ]

2 голосов
/ 17 октября 2019

Не уверен, что что-то изменилось в Core 3.0, но в 2.2 я бы решил это следующим образом: добавьте это в ConfigureServices

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

Также убедитесь, что вы добавили свою политику в метод Configure:

app.UseCors("CorsPolicy");

Вы можете редактировать политику, если хотите использовать cors, так как это в основном отключает ее.

0 голосов
/ 17 октября 2019

Добавьте следующее в начале ConfigureServices:

services.AddCors();

Добавьте следующее в начале Configure:

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