Здесь возникает небольшая проблема с CORS. Вы, наверное, знаете один ...
Доступ к XMLHttpRequest по адресу http://localhost:59365/Token' от источника
'http://localhost:4200' заблокирован политикой CORS: Ответ на
предполётный запрос не проходит проверку контроля доступа: не имеет
HTTP ok статус.
Получается, что мне нужно включить CORS в проекте Web API, поэтому я запустил Install-Package Microsoft.AspNet.WebApi.Cors
и добавил config.EnableCors()
к WebApiConfig.cs
Это не помогло, поскольку рассматриваемая конечная точка /Token
для всех намерений и целей встроена в OAuth, поэтому я не могу коснуться этого кода, чтобы добавить аннотацию [EnableCors]
, которая, очевидно, необходима для этой работы:
OAuthOptions = new OAuthAuthorizationServerOptions {
TokenEndpointPath = new PathString("/Token"),
...
}
Итак, последняя идея, которая у меня появилась (которую я не собираюсь сейчас пробовать, так как сейчас 1 час ночи, и мне нужно работать завтра), - это перенаправить логин на контроллер, которым я могу манипулировать, и использовать его как своего рода "среднего человека" между моим приложением и / Token, хотя по общему признанию, я не уверен, как может выглядеть код этого среднего человека ...
Я предполагаю, что есть более эффективный способ решения этой проблемы, о котором я не подозреваю, и я надеюсь, что вы, кто, вероятно, умнее меня, могли бы быть достаточно любезны, чтобы поделиться.
Суть в том, что если я не могу опубликовать в / Token, я не могу аутентифицировать свое приложение в сервисе, и оба бита программного обеспечения бесполезны. Я не понимаю, почему это так или как я должен решать эту проблему ...