應(yīng)用場景:
1:每個請求都帶上的參數(shù),比如token松逊,時間戳等躺屁。
2:對返回的狀態(tài)進行判斷,比如token是否過期
請求
axios.interceptors.request.use(
config => {
const xToken = getXToken()
if (xToken !== null) {
config.headers['X-Token'] = xToken
}
if (config.method === 'post') {
config.data = {
...config.data,
_t: Date.parse(new Date()) / 1000,
}
} else if (config.method === 'get') {
config.params = {
_t: Date.parse(new Date()) / 1000,
...config.params
}
}
return config
}, function (error) {
return Promise.reject(error)
}
)
響應(yīng)
axios.interceptors.response.use((res) => {
// token 已過期经宏,重定向到登錄頁面
if (res.date.code === 4) {
localStorage.clear()
router.replace({
path: '/sigin',
query: {redirect: router.currentRoute.fullPath}
})
}
return res
}, function(err) {
return Promise.reject(error)
})