Есть некое API требующее авторизации. Я отправляю логин и пароль в headers, но по какой-то причине ошибка 405
Код сервиса:
call(): Observable<any> {
return Observable.create(observer => {
let headers: Headers = new Headers();
headers.append("Authorization", "Basic " + btoa('demo' + ":" + 'demo'));
headers.append("Content-Type", "application/x-www-form-urlencoded");
this._http
.get('http://api.demo.org', new RequestOptions({headers: headers}))
.subscribe(data => {
observer.next(data)
},
error => observer.error(error)
)
})
}
И компонента:
this.setUser.call().subscribe(result => {
console.log( result );
});
Ты делаешь запрос при помощи JWT, при отправке запроса на сервер происходит следующее:
Браузер смотрит на заголовки, заголовок Authorization
автоматически попадает в разряд "сложных", требующих проверку на
стороне сервера.
Браузер автоматически генерирует запрос(pre-fligth request) options и отправляет на сервер, чтобы узнать, какие методы
разрешены на сервере, здесь начинает работать CORSна стороне
сервера.
Из вышесказанного можно сделать вывод, что сервер у тебя настроен неправильно, а именно в allowed методах нет Options.
Продвижение своими сайтами как стратегия роста и независимости