Ошибка "Нет 'Access-Control-Allow-Origin'", но cors разрешает все - PullRequest
0 голосов
/ 01 июня 2018

Я пытаюсь использовать запрос get на своей веб-странице (выполненный в угловом формате), который ссылается на мой собственный API (созданный с использованием ядра APS.NET).Я получаю следующую ошибку в моем инструменте отладки Chrome:

Нет заголовка «Access-Control-Allow-Origin» на запрошенном ресурсе.Origin 'http://localhost:4200' поэтому не разрешен доступ.

Это странно, потому что я поместил в свой файл startup.cs следующее:

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

Так что все должноразрешено?Это код, который я использую для запроса GET:

ngOnInit(){
  debugger;
  this._svc.getAllMagicItems().subscribe(result =>{
    debugger;
    console.log(result);
    debugger;
    this.items = Array.of(result);
    debugger;
  })
}

getAllMagicItems () выполняет этот код:

getAllMagicItems(): Observable<IImageRootObject> {
    return this._http.get<IImageRootObject>("http://localhost:63514/api/v1/MagicItem");
}

Как мне решить эту проблему CORSE?

1 Ответ

0 голосов
/ 11 января 2019

Как и в этом сообщении Джанкарло Бенитес предоставил шоу, моя проблема заключалась в вызове services.AddCors () и services.AddMVC () .Моя проблема заключалась в том, что я сначала вызвал AddMVC () , но для инициализации MVC необходимо разрешить заголовки CORS.Загрузите их в следующем порядке:

public void ConfigureServices(IServiceCollection services) {
  services.AddCors();       /* <----- Added this line before de MVC */
  services.AddMvc();
}
...