1.安装axios
npm install axios
2.封装axios
import axios from 'axios'
// 1.通过当前的运行命令判断出当前的运行环境,切换请求地址
// 开发环境 + 测试环境 + 生产环境
const isDev = process.env.NODE_ENV === 'development'
// isDev --- true ---- 开发环境 ---- npm run serve
// isDev ---- false ---- 生产环境 ---- npm run build
// 如果是开发环境,服务器可能是本地的,也可能是服务器上的
const baseUrl = isDev ? 'xxxxxxxxxxxx' : 'xxxxxxxxxxxx'
// 2.自定义axios,添加axios拦截器
const instance = axios.create({
baseURL: baseUrl
})
instance.defaults.timeout = 6000
// 添加请求拦截器
axios.interceptors.request.use(function (config) {
// 在发送请求之前做些什么
const token = localStorage.getItem('token')
config.headers.common.token = token
return config
}, function (error) {
// 对请求错误做些什么
return Promise.reject(error)
})
// 添加响应拦截器
axios.interceptors.response.use(function (response) {
// 对响应数据做点什么
return response
}, function (error) {
// 对响应错误做点什么
return Promise.reject(error)
})
export default instance
3.VUE异步请求传入参数方式
import axios from '封装axios路径'
//方式(推荐)
GET axios.get(请求路径,{params: 数据对象})
axios.get(请求路径,{params: {uname:'aaa', pwd:'bbb'}})
POST axios.post(请求路径,数据对象)
PUT axios.put(请求路径,数据对象)
DELETE axios.delete(`请求路径/${id}`)
//补充方式
//post
export const 自定义名称 = (params) => {
// return request.post('xxxxx', params )
return request({
url: 'xxxxx',
method: 'POST',
data: params //这种方式:post请求时 键为data 不能为其他
})
}
//get
export const 自定义名称 = (params) => {
// return request.get('xxxxx', { params: params })
return request({
url: 'xxxxx',
method: 'GET',
params: params
})
}
//等等
版权声明:本文为weixin_44197797原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。