在HTTP.get中传递标头

时间:2018-08-22 02:03:13

标签: ionic-framework ionic-native

我正在从事一个项目,并且正在与JWT进行交易,无论如何,我都试图发送发帖请求,但这很吸引人,但是当我尝试以相同的方式发出请求时,却无法正常工作。 这是我的代码:

ionViewWillEnter(){

this.storage.get('token').then((val) => {
 this.token = val 

console.log(this.token);
let link = Constants.API_ENDPOINT+"/v1/owner/section/list";
console.log("Debugging");
console.log(link);

this.http.get(link,{},{Authorization: "Bearer "+val})
.then(data =>{
  var hdrs = JSON.parse(data.headers);
  var res = JSON.parse(data.data);

  console.log(res);
  console.log(hdrs)
})
.catch(error =>{
  console.log("Yup Errors area ")
  console.log(error.status);
console.log(error.error); // error message as string
console.log(error.headers);

});
});
}

我得到以下输出:

 Debugging
(the correct link)
Yup Errors area ["a message I have set to make sure that the code    executed the catch method"]
undefined
undefined
undefined

所以基本上我得到一个错误,但是离子不会显示它!

注意:

我已将请求发送到Postman中具有相同标题的同一链接,并返回了正确的响应

1 个答案:

答案 0 :(得分:0)

我非常怀疑您的响应HTTP标头本身就是JSON格式,这一行暗示了这一点:

var hdrs = JSON.parse(data.headers);

您的标头可能只是键/值对的映射,而不是JSON编码。我不知道该行是否引发异常,从而中止了成功处理程序的其余部分。