Я пытаюсь настроить управление API, и первым делом нужно настроить Oauth в экземпляре управления API. [Edit] Возможно, важно упомянуть, что клиентское приложение не заинтересовано в аутентификации пользователей - я просто хочу использовать это как механизм авторизации для клиентского приложения и приложения API.
У меня есть Политика CORS для моего входящего трафика, которая выглядит следующим образом:
<cors allow-credentials="true">
<allowed-origins>
<origin>http://localhost:4200</origin>
</allowed-origins>
<allowed-methods>
<method>GET</method>
<method>POST</method>
</allowed-methods>
<allowed-headers>
<header>content-type</header>
<header>accept</header>
</allowed-headers>
</cors>
Я могу попасть в конечную точку Token и получить обратно токен доступа с помощью Postman на моем локальном компьютере (что, как я ожидал, не будет разрешено с учетом разрешенных - исходная конфигурация:
![enter image description here](https://i.stack.imgur.com/GIFMi.png)
Тот же запрос от приложения Angular, запущенного на локальном хосте: 4200 заблокирован CORS:
![enter image description here](https://i.stack.imgur.com/mqUXM.png)
Я прочитал все, что мог, о настройке управления API для обработки CORS, но я застрял. Что я делаю не так?
Потому что я могу делает что-то не так в Angular, вот мой звонок:
const config = environment.authConfig;
const body = new HttpParams()
.set('grant_type', config.grantType)
.set('client_id', config.clientId)
.set('scope', config.scope)
.set('client_secret', config.clientSecret);
let options = {
headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded')
}
return this.http.post<Auth0AccessResponse>(config.tokenUrl, body.toString(), options);
![enter image description here](https://i.stack.imgur.com/AlHPc.png)