У меня возникла проблема при попытке получить токен с моего сервера в проекте Angular 5.Мой запрос POST
никогда не отправляется, и сервер возвращает 400 Bad Request
и отображает в консоли следующее:
![Console Screenshot](https://i.stack.imgur.com/nCNVo.jpg)
![Headers Screenshot](https://i.stack.imgur.com/e8xg4.jpg)
![Response Screenshot](https://i.stack.imgur.com/Mz6Fy.jpg)
Насколько я понимаю, мне нужно настроить запрос OPTIONS
в CORS, чтобы разрешить запрос перекрестного происхождения, но я чувствуюкак будто я пробовал каждое решение, которое есть там, без какого-либо успеха.
Насколько я пробовал до сих пор, в моем Web.config
у меня есть это:
![Web.config Screenshot](https://i.stack.imgur.com/hm8YI.jpg)
И я включил CORS глобально в моем WebApiConfig.cs
:
![WebApiConfig.cs Screenshot](https://i.stack.imgur.com/kPDYG.jpg)
Я даже реализовал решение, предложенное вhttps://www.stevefenton.co.uk/2012/11/using-cors-with-asp-net-web-api/
Вот вызов, который я выполняю в своем проекте Angular 5:
userAuthentication(userDetails: LoginUser): Observable<LoginUser> {
var data = "username=" + userDetails.username + "&password=" + userDetails.password + "&grant_type=password";
var reqHeader = new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded', 'No-Auth': 'True' });
return this.http.post<LoginUser>(this._baseUrl + 'Token', data, { headers: reqHeader })
.pipe(
catchError(this.handleError)
)
}
Когда я выполняю вызов с помощью POSTMAN, все идет гладко, и я получаю access_token
.