一 首先安装 axios 安装 qs
npm install axios --save
npm install qs
二 然后创建js引入 axios 和 qs
import axios from 'axios'
import Qs from 'qs'
三 创建一个函数
export function request(config){ //config 调用时候传过来的参数
const service = axios.create({
baseURL: ' http://localhost:8082', //请求地址签字
timeout: 30000 // 请求超时时间
})
// 2.axios请求拦截
service.interceptors.request.use(config => {
const newdata = config.data
config.headers['Content-Type'] = 'application/x-www-form-urlencoded' //设置请求头部
config.headers.authorization = 'window.localStorage.getItem('token')' //传递token
config.data = Qs.stringify({ ...config.data})
//data是添加到请求体(body)中的 用于post请求。
if (config.method === 'get') {
config.params = { ...newdata } //params是添加到url的请求字符串中的,用于get求。
}
return config
}, err => {
console.log(err)
})
// 4.axios响应拦截
service.interceptors.response.use(res => {
return res
}, err => {
console.log(err)
})
// 3.发送网络请求 调用axios
return service(config)
}
5 调用
import {request} from '../utils/request.js' //在页面中引入刚刚创建的js
let data = {
a:111,
b:222
}
request({
url:'aaa', //地址后缀
method: 'post', //请求方式
data //传的参数
}).then(res => {
})