如何在token.js的头中添加令牌

时间:2020-06-02 11:52:03

标签: reactjs api

我有一个要与api一起使用的Web应用程序。我想获取需要令牌的数据。我已经有了令牌,即通过在邮递员中运行登录功能来获得令牌)。问题是:该令牌放在哪里?有人说我需要将其放在headers中,但找不到在哪里制作此headers。这是我的代码:

componentDidMount() {
  fetch('API_GOES_HERE', {
    headers: { Authentication: `Bearer ajsbdjabsjhdbfquhjwbeasbdasdjwbqjbds
  }})
 .then(res => res.json())
 .then(json => {
     this.setState({
       contact: json,
       isLoaded: true,
     })
 })
 .catch(err => console.log(err));
}

没有令牌,api始终返回此{"message":"missing or malformed jwt"}。我已经尝试从邮递员本身获取此数据,并且它可以工作,因为我已经用令牌设置了令牌变量。

我通过将端点和令牌更改为ENDPOINT_APIAPI_TOKEN来检查它。谢谢,任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

您需要在请求标头中包含令牌

fetch('API_ENDPOINT', {
   headers: { Authentication: `Bearer ${token}`
})
.then(res => res.json())
.then(json => {
    this.setState({
      contact: json,
      isLoaded: true,
    })
})
.catch(err => console.log(err));

答案 1 :(得分:-1)

好的,我找到了这个问题的解决方案,我需要将content-type放在其自身的标题中,并向https添加一个API_ENDPOINT,这是有效的代码

fetch(API_ENDPOINT, {
    headers: { 
      Authorization: `TOKEN`,
      'Content-Type': 'application/json',
      'Accept': 'application/json'
  }})
 .then(res => res.json())
 .then(json => {
   console.log(json)
     this.setState({
       contact: json,
       isLoaded: true,
     })
 })
 .catch(err => console.log(err));