Typescript (ионное приложение) - базовая аутентификация не работает - PullRequest
0 голосов
/ 01 июня 2018

Вот мой код:

onClick() {
console.log("I am running...");

let headers: Headers = new Headers();
headers.append('Authorization', 'Basic ' + btoa("Userid:password") );
headers.append("Content-Type", "application/json");

let options = new RequestOptions({ headers: headers });
return this.http.get(this.url, options)
  .map((response: Response) => {
    console.log(response);
  }).subscribe();
}

Я получаю сообщение об ошибке: 401 (Несанкционированный)

Ответ на предпечатный запрос не проходит проверку контроля доступа: Нет 'Access-Control-Заголовок Allow-Origin 'присутствует в запрашиваемом ресурсе.Происхождение 'http://localhost:8100' поэтому не допускается.Ответ имеет HTTP-код состояния 401.

Пожалуйста, предоставьте мне несколько решений.

Ответы [ 2 ]

0 голосов
/ 01 июня 2018

Убедитесь, что ваш API имеет настройку CORS.Вашему API необходим метод опций для проверки перед полётом CORS.https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS, https://developer.mozilla.org/en-US/docs/Glossary/Preflight_request.

0 голосов
/ 01 июня 2018

Это проблема CORS.Убедитесь, что этот заголовок находится на вашей стороне и на стороне сервера:

headers.append('Access-Control-Allow-Origin' , '*');

(Конечно, вы можете указать, что вы хотите разрешить, строка выше просто разрешает все для вас)

...