axios如何在发送传token请求参数?

我在登录时候获取到了token并存在localStorage里面,想知道如何在axios上请求数据

console.log(localStorage.getItem("token")); // 这个可以成功输出数据


// 这是请求代码
 beforeCreate() {
    this.axios
      .post(`/api/services/app/role/GetRoles`, {
        permission: ""
      })
      .then(response => {
        console.log(response.data.result);
      })
      .catch(function(error) {
        console.log(error);
      });
  }
};

想问一下这个如何才能把token带上一并请求数据,谢谢您的解答

阅读 11.7k
5 个回答

设置全局的默认值

axios.defaults.baseURL = 'https://api.example.com';
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;    // 这个就是
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

详见手册:https://www.kancloud.cn/yunye...

token这种东西放拦截器里就行了。

axios.interceptors.request.use(config => {
    config.headers.permission = localStorage.getItem("token")
    return config
})

通常会把 token 放在 request header 里。axios 设置 header 的大概有4种

  1. 在 post 方法里的 config 参数中但上 headers
  2. 创建一个新的 axios instance,并带上 headers
  3. 修改 axios 的 global default config
  4. 拦截器

header 携带
如果都需要token 那就拦截器

推荐问题
宣传栏