Я создаю приложение C#, для которого мне нужно обновить базу данных и которое должно делать запросы к API, работающему в другом домене. Однако, когда я пытаюсь сделать эти запросы, я получаю ошибки CORS.
Я читал о CORS и понимаю, что это функция безопасности, которую браузеры используют для предотвращения междоменных запросов, но я не знаю, как включить ее в своем приложении C#.
Может кто-нибудь объяснить, как включить CORS в приложении C#, и привести пример того, как сделать междоменный запрос с помощью CORS? Заранее спасибо!
Я пытался установить «Microsoft.AspNetCore.Cors» из диспетчера пакетов, но не работает.
«[это] не работает» — недостаточно подробное описание проблемы. Пожалуйста, попробуйте еще раз.
Отвечает ли это на ваш вопрос? включить Cors в .NET Core 6
это функция безопасности, которую браузеры используют для предотвращения междоменных запросов. Нет, как раз наоборот: CORS ослабляет ограничения. Однако это распространенное заблуждение.





Скопируйте и вставьте в Program.cs
builder.Services.AddCors(o => o.AddPolicy("MyPolicy", builder =>
{
builder.WithOrigins("*")
.AllowAnyMethod()
.AllowAnyHeader();
// U Can Filter Here
}));
Затем напишите это, также в Program.cs. Но пишите в правильном порядке, после app.UseRouting(); и перед app.UseAuthentication(); - https://learn.microsoft.com/en-us/aspnet/core/fundamentals/middleware/?view=aspnetcore-7.0#middleware-order
app.UseCors("MyPolicy");
используя (var client = новый HttpClient())
Добавьте это в свой код
Это неправильное решение. Во-первых, это не имеет ничего общего с CORS. Во-вторых, вы не должны создавать новый HttpClient экземпляр с каждым запросом и не должны регулярно Dispose-инг их
Ваш ответ содержит только код. Я рекомендую вам не только опубликовать код в качестве ответа, но и предоставить объяснение того, что делает ваш код и как он решает проблему вопроса. Ответы с объяснением, как правило, более полезны и качественны, и с большей вероятностью привлекут положительные голоса. Можете ли вы отредактировать свой ответ, чтобы включить это?
В приложение C# MVC мы можем добавить пакет Microsoft.AspNet.WebApi.Cors NuGet. После успешной установки этого пакета используйте следующую строку в контроллере:
using System.Web.Http.Cors;
И включите CORS перед определением таких API, как:
[HttpPost]
[EnableCors(origins: "*", methods: "*", headers: "*")]
public int GetId(int id)
{
return id;
}
Вы искали
asp.net enable corsи прочитали эту ссылку: learn.microsoft.com/en-us/aspnet/core/security/… . Кстати, вы действительно хотите указать, является ли это .NET Framework или Core (или 5, 6 или 7)