axios
一、发送请求的方式
二、安装及使用
npm install axios --save
import axios from 'axios'
asios({
url: 'http://123.207.32.32:8000/home/multidata',
method: 'get',
params: {
type: 'pop',
page: 1
},
}).then(res => {
console.log(res)
})
三、并发请求
axios.all([
axios(),axios()
]).then(results => {
})
axios.all([
axios(),axios()
]).then(axios.spread((res1, res2) => {
console.log(res1),
console.log(res2)
}))
四、全局配置
axios.defaults.baseURL = "http://123.207.32.32:8000"
axios.defaults.timeout = 5000
axios.defaults.headers.post['Content-Type'] = 'application/x-www-from-urlencoded';
五、axios实例
const instance1 = axios.create({
baseURL: '',
timeout: 5000
})
instance1({
url: '',
params: {
}
}).then((res) => {
console.log(res)
})
六、封装
import axios from 'axios'
export function request(config){
retrun new Promise((resolve, reject) => {
const instance = axios.creat({
baseRUL: '',
timeout: 5000
})
})
instance(config).then(res => {
resolve(res)
}).catch(err => {
reject(err)
})
}
request({
url: '',
}).then(res => {
}).catch(err => {
})
import axios from 'axios'
export function request(config){
const instance = axios.creat({
baseURL: '',
timeout: 5000
})
return instance(config)
}
七、拦截器
import axios from 'axios'
export function request(config){
const instance = axios.creat({
baseURL: '',
timeout: 5000
})
instance.interceptors.request.use(config => {
return config
},err => {
})
instance.interceptors.response.use(res => {
return res.data
},err => {
})
return instance(config)
}