Получение 400 неверных запросов при попытке доступа к API с помощью Angular, но он отлично работает при использовании PostMan.

Я уже протестировал этот API и сделал запрос GET к API с помощью PostMan и получил ответ. Но при попытке реализовать это в моем приложении Angular 6 я получаю несанкционированную ошибку 401. Это мой угловой код.

this.http.get('https://api.channeladvisor.com/v1/orders',{headers:{'Authorization':'Bearer *token*','Content-Type':'application/x-www-form-urlencoded','cache-control':'no-cache'}})
.subscribe((response)=>{
  this.channel=response;
    console.log(this.channel)
})
}

У меня есть токен, и я не отображал его в коде из соображений безопасности. У меня есть ощущение, что это что-то с синтаксисом заголовков, но я не уверен.


person TJ37    schedule 14.11.2018    source источник
comment
Просто проверьте, передается ли механизм аутентификации в заголовках в Postman, где вкладка заголовка отличается, и вы пропустили это... на всякий случай...   -  person Ketan    schedule 15.11.2018
comment
Под заголовками в Postman ключ — «Авторизация», а значение — «Bearer token». Вроде бы в Почтальоне все точно так же   -  person TJ37    schedule 15.11.2018
comment
Я только что понял, что делаю почтовый запрос на API, а не на получение. Но теперь я получаю другую ошибку. ошибка 400, неверный запрос.   -  person TJ37    schedule 15.11.2018


Ответы (1)


Можете ли вы попробовать добавить их в свои заголовки:

'authorization': 'bearer ' + token,
'Authenticationtoken': 'bearer ' + token,
'X-Requested-With'  : 'XMLHttpRequest'

Мой API использовал CakePHP3, такая же проблема возникла давно, после добавления выше 3 параметров все в порядке :)

И еще, пожалуйста, отследите свой запрос с помощью инструментов разработчика и сравните разницу между успехом и неудачей.

person Nick Wang    schedule 15.11.2018