У меня проблема с моим основным API ASP.NET и клиентом Angular.Я хочу реализовать SignalR, чтобы иметь связь между API и Angular.Политика cors уже активирована на нашем клиенте и API, потому что мы уже можем получать данные из API с помощью нашего клиента.Но проблема теперь в том, что когда я пытаюсь использовать SignalR, я получаю сообщение об ошибке с CORS POLICY:
Доступ к XMLHttpRequest в 'http://localhost:50501/CoordinatorHub/negotiate' от источника' http://localhost:4200' былзаблокирован политикой CORS: Ответ на запрос предварительной проверки не проходит проверку контроля доступа: в запрашиваемом ресурсе отсутствует заголовок «Access-Control-Allow-Origin».
Но внутри уже есть политика corsStartup.cs в нашем API, и он выглядит так:
В методе ConfigureServices:
services.AddCors(options =>
{
options.AddPolicy("AllowSpecificOrigin",
builder =>
builder.WithOrigins("http://localhost:4200/")
.AllowCredentials()
//.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
.SetIsOriginAllowedToAllowWildcardSubdomains());
});
А внутри метода Configure:
app.UseCors("AllowSpecificOrigin");
В нашем клиентемы просто хотим установить связь между API и клиентом, и это так:
this.hubConnection.start({withCredentials: false}).then(() =>
this.hubConnection.invoke('send', 'Hello'));