В заголовке ответа проектов WebAPI отсутствует Access-Control-Allow-Origin - PullRequest
0 голосов
/ 08 февраля 2019

У меня есть два .NET Framework 4.6.2 WebAPI проекта.Оба используют Microsoft.AspNet.WebApi.Cors v5.2.7. Оба имеют включенные Cors в своих WebApiConfig.cs файлах

  var cors = new EnableCorsAttribute("http://localhost:3725", "*", "*");
  config.EnableCors(cors);

Если я установил точку останова в WebApiConfig.cs, я вижу, что Cors был включен в обоих проектах.

enter image description here Доступ к одному из WebAPI с помощью моего localhost:3725 клиента работает нормально, доступ к другому выдает been blocked by Cors error

jquery-3.3.1.js:9600 OPTIONS http://localhost:54739/logging/Performance 404 (Not Found) send @ jquery-3.3.1.js:9600 ajax @ jquery-3.3.1.js:9206 perfLoggerStop @ flogging.js:46 (anonymous) @ JsTodos:106 fire @ jquery-3.3.1.js:3268 fireWith @ jquery-3.3.1.js:3398 done @ jquery-3.3.1.js:9305 (anonymous) @ jquery-3.3.1.js:9548 load (async) send @ jquery-3.3.1.js:9567 ajax @ jquery-3.3.1.js:9206 getAllTodos @ JsTodos:100 onclick @ JsTodos:44 JsTodos:1 Access to XMLHttpRequest at 'http://localhost:54739/logging/Performance' from origin 'http://localhost:3725' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

Если я проверю заголовки ответа двух WebAPI в Fiddler, рабочий из них содержит:
Access-Control-Allow-Origin: http://localhost:3725

В заголовке ответа отказавшего WebApi отсутствует localhost:54739.

Я построил оба проекта одинаково и у меня идентичные версии пакетов NuGet.

Кто-нибудь знает, что может быть источником проблемы или как можно устранить неполадки в дальнейшем?

1 Ответ

0 голосов
/ 08 февраля 2019

Проблема в том, что у меня произошла ошибка в настройке route.Почему ошибка CORS, а не ошибка Not Found, я не знаю.Имейте в виду, что это может произойти, замаскируйте основную ошибку и отправьте вас по неверной касательной, пытаясь отследить источник ошибки CORS, даже если CORS правильно настроен и работает.

...