尝试使用 Angular 访问 API 时收到 400 个错误请求,但在使用 PostMan 时它工作得很好

Getting 400 bad request when trying to access an API using Angular, but it works perfectly fine when using PostMan

我已经测试了这个 API 并使用 PostMan 在 API 上发出了 GET 请求并得到了响应。但是当我试图在我的 Angular 6 应用程序上实现它时,我收到了 401 未经授权的错误。这是我的 angular 代码。

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)
})
}

我有令牌,出于安全原因没有在代码中显示它。我感觉它与 headers 语法有关,但我不太确定。

您可以尝试将它们添加到您的 headers:

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

我的API用的是CakePHP3,很久以前也出现过同样的问题,添加以上3个参数后一切正常:)

还有更多,请通过开发者工具跟踪您的请求,并比较成功与失败的区别。