axios封装
Posted cuishuangshuang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了axios封装相关的知识,希望对你有一定的参考价值。
创建request.js文件
import axios from ‘axios‘;
import { getToken } from ‘@/utils/token‘;
import { Message } from ‘element-ui‘
axios.defaults.baseURL = ‘http://139.196.42:8090/api/‘;
// 请求拦截器
axios.interceptors.request.use(function(config){
// 在发送请求前
config.headers[‘token‘] = getToken( )
return config
},function(error){
// 请求错误
return Promise.reject(error)
})
// 响应拦截器
axios.interceptors.response.use(function(response){
// 响应数据
if(response.data.code !== 20000){
Message({
message: response.data.message,
type: ‘warning‘,
duration: 2000
})
}
return response;
},function(error){
Message({
message: error.message,
type: ‘error‘,
duration: 2000
})
// 响应数据错误
return Promise.reject(error)
})
export default axios;
请求接口封装
创建api.js文件
import request from ‘@utils/request‘
export function login(data){
return request({
method: ‘POST‘,
url: ‘user/login‘,
data
})
}
token本地存储,获取,移出封装
创建token.js文件
const tokenName = ‘admin-token‘
export function setToken(token){
return sessionStorage.setItem( tokenName, token )
}
export function getToken(token){
return sessionStorage.setItem( tokenName )
}
export function removeToken(token){
return sessionStorage.setItem( tokenName )
}
以上是关于axios封装的主要内容,如果未能解决你的问题,请参考以下文章