Авторизация auth0 вызов API возвращает статус 200, но все еще получает ответ об ошибке - PullRequest
0 голосов
/ 19 января 2020

angular http call:

login(){
    const loginstring = 'https://<removed>.auth0.com/authorize?' +
      'response_type=token&' +
      'client_id=<removed>&' +
      'connection=null&' +
      'redirect_uri=<removed>';
    this.http.get(loginstring, {observe: 'response'}).subscribe(
      (req:any)=>{
        console.log('this is the http response');
        console.log(req);
      });

  }

ответ

Не используется форматирование кода, поскольку читать его без кода eaiser.

ОШИБКА HttpErrorResponse {headers: HttpHeaders , status: 200, statusText: «OK», URL: «http://localhost: 4200 / », ok: false,…} заголовки: HttpHeaders {normalizedNames: Map (0), lazyUpdate: null, lazyInit : ƒ} status: 200statusText: «OK» url: «http://localhost: 4200 / » ok: falsename: «HttpErrorResponse» сообщение: «Ошибка Http во время синтаксического анализа для http://localhost: 4200 /"error: {error: SyntaxError: неожиданный токен <в JSON в позиции 0 в JSON .parse () в XMLHtt…, текст:" ↵↵↵ ↵↵ "} <strong>proto : HttpResponseBase

httpclient по умолчанию возвращает json ответа, и это то, что я активно исследую. Но я не уверен, как это исправить.

Ответы [ 2 ]

0 голосов
/ 19 января 2020

Так что довольно легко исправить просто нужно было изменить тип ответа на текстовый.

const loginstring = 'https://portaltech.auth0.com/authorize?' +
      'response_type=code&' +
      'client_id=MOqNyn7qyRhJdCOv5QHCUGkmjAv6Wied&' +
      'connection=null&' +
      'redirect_uri=http://localhost:4200/';
    this.http.get(loginstring, {responseType: 'text', observe:'response'}).subscribe(
      (req:any)=>{
        console.log('this is the http response');
        console.log(req.body);
        this.innerhtml = req.body;
0 голосов
/ 19 января 2020

Вы получаете 200, потому что вам удалось добраться до сервера, но у вас есть проблемы с полезной нагрузкой. Казалось, вам нужно отправить JSON, и вы отправляете что-то, что начинается с <, а не JSON. Вы можете использовать этот сайт, чтобы проверить, действительно ли вы отправляете JSON: https://jsonformatter.curiousconcept.com/

Я надеюсь, что это было полезно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...