У меня есть два .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
был включен в обоих проектах.
Доступ к одному из 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.
Кто-нибудь знает, что может быть источником проблемы или как можно устранить неполадки в дальнейшем?