使用axios发送承载令牌

在我的react应用程序中,我正在使用axios执行REST api请求。

但是它无法发送带有请求Authorization标头。

这是我的代码:

tokenPayload() {
  let config = {
    headers: {
      'Authorization': 'Bearer ' + validToken()
    }
  }
  Axios.post( 
      'http://localhost:8000/api/v1/get_token_payloads',
      config
    )
    .then( ( response ) => {
      console.log( response )
    } )
    .catch()
}

在这里,该validToken()方法将仅从浏览器存储中返回令牌。

所有请求都有500个错误响应,说明

无法从请求中解析令牌

从后端。

如何随每个请求一起发送授权标头?您会推荐其他任何带有react的模块吗?

小胖GO2020/03/13 00:32:25

的第二个参数axios.postdata(not config)。config是第三个参数。请查看此以获取详细信息:https : //github.com/mzabriskie/axios#axiosposturl-data-config

猴子十三2020/03/13 00:32:25

通过使用Axios拦截器:

const service = axios.create({
  timeout: 20000 // request timeout
});

// request interceptor

service.interceptors.request.use(
  config => {
    // Do something before request is sent

    config.headers["Authorization"] = "bearer " + getToken();
    return config;
  },
  error => {
    Promise.reject(error);
  }
);