У меня есть CORS включен в моем приложении api для веб-приложений. и у меня есть контроллеры API с классическими именами функций REST, такими как Get() и Get (string id), и контроллерами с именами настраиваемых функций, например. [HttpGet] GetSomeThing()веб-маршруты api, не работающие с включенными CORS.
я есть маршруты, сконфигурированные как этот
config.EnableCors();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
config.Routes.MapHttpRoute(
name: "ApiById",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
с этим устройством я получаю сообщение об ошибке Нет 'Access-Control-Allow-Origin' заголовок присутствует, когда я пытаюсь позвонить контроллер с классическими функциями REST.
например./api/Controller
и если я выполняю маршрут с действием после маршрута без действий, он дает мне ту же ошибку при вызовах контроллера с именами пользовательских функций.
например./API/контроллер/функция
Обратите внимание, что у меня есть
[EnableCorsAttribute("http://localhost:xxxx", "*", "*")]
атрибут на обоих контроллерах. и эти вызовы делаются из углового приложения.
добрый совет.