У нас есть Angular SPA, поддерживаемый веб-API ASP.NET, который использует OAuth 2.0 Предоставление учетных данных пароля владельца ресурса с токеном на предъявителя для авторизации.API использует Microsoft.Owin.Security.OAuth для реализации OAuth.
Мы пытаемся интегрироваться со сторонним приложением, которое будет использовать Предоставление кода авторизации , чтобы пользователи могли его авторизовать.чтобы получить доступ к нашему приложению от их имени.
Мы хотим, чтобы страница авторизации была частью SPA, но у меня возникают проблемы с выяснением того, как отправить запрос авторизации от SPA в API и получить его.перенаправить обратно в стороннее приложение.
Я пытался использовать как AJAX (как и все другие запросы API в SPA), так и обычную HTML-форму (чтобы перенаправлять ответы перенаправляли страницу).
Первоначально мы отправляли ответ JSON от API и позволяли SPA выполнить само перенаправление, но OWIN автоматически отправит ответ о перенаправлении, если возникнет какая-либо ошибка;так что, похоже, нет никакого способа избежать ответов на перенаправление.
Если я отправлю запрос через AJAX, браузер будет автоматически следовать ответам перенаправления, отправленным сервером, отправив другой запрос AJAX вместо перенаправлениястр.
Если я использую обычную HTML-форму для отправки запроса, похоже, нет никакого способа отправить требуемый заголовок Authorization
с токеном на предъявителя.