1.安裝并引入
yarn add axios
import axios from 'axios' //在js文件中引入
2.配置
axios.defaults.timeout = 5000
axios.defaults.baseURL = 'http://localhost:8080'
axios.defaults.withCredentials = true
3.請(qǐng)求攔截與響應(yīng)攔截
// 請(qǐng)求攔截
axios.interceptors.request.use(
config => {
// 配置通用參數(shù)
return config
},
err => {
return Promise.reject(err)
}
)
// 響應(yīng)攔截
axios.interceptors.response.use(
response => {
if (response) {
// 響應(yīng)處理
}
return response
},
error => {
return Promise.reject(error.response.data)
}
)
4.封裝get post put delete請(qǐng)求
/**
* get請(qǐng)求
* @param url
* @param params
* @returns {Promise}
*/
const get = (url, params) => {
return new Promise(async (resolve, reject) => {
try {
const res = await axios.get(url, {
params: params
})
resolve(res)
} catch (err) {
reject(err)
}
})
}
/**
* post請(qǐng)求
* @param url
* @param params
* @returns {Promise}
*/
const post = (url, params) => {
return new Promise(async (resolve, reject) => {
try {
const res = await axios.post(url, params)
resolve(res)
} catch (err) {
reject(err)
}
})
}
/**
* put請(qǐng)求
* @param url
* @param params
* @returns {Promise}
*/
const put = (url, params) => {
return new Promise(async (resolve, reject) => {
try {
const res = await axios.put(url, params)
resolve(res)
} catch (err) {
reject(err)
}
})
}
/**
* delete請(qǐng)求
* @param url
* @param params
* @returns {Promise}
*/
const del = (url, params) => {
return new Promise(async (resolve, reject) => {
try {
const res = await axios.delete(url, {
data: params
})
resolve(res)
} catch (err) {
reject(err)
}
})
}
5.導(dǎo)出
export default {
get,
post,
put,
del
}
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。