vue登录操作流程

借鉴博客:

https://blog.csdn.net/qq_20757489/article/details/102629509

 

感觉这个比较全一点,但写到一堆代码,有点乱,最好两个结合看

https://blog.csdn.net/qq_31906861/article/details/86187516

 

 

 

返回状态使用axios拦截器写法:

axios.interceptors.response.use((response: any) => {
if (response.data.token && response.data.token.length > 10) {
sessionStorage.setItem('jwt-token', response.data.token)
}
if (response.status === 200) {
LoadingBar.finish();
return Promise.resolve(response);
} else {
if (response.data.success || response.data.success === undefined) {
LoadingBar.finish();
return Promise.resolve(response);
} else {
LoadingBar.error();
return Promise.reject(response);
}
}
}, (error) => {
LoadingBar.error()
if (error.response.status == 401) {
route.push('/login')
}
if (error && error.response && error.response.data && error.response.data.errMessage) {
Message.destroy()
Message.error(error.response.data.errMessage)
return Promise.reject(error.response)
} else if (error && error.response && error.response.status) {
switch (error.response.status) {
case 400:
break;
case 403:
Message.error('访问被禁止')
break;
case 404:
Message.error('资源未找到')
break;
default:
Message.error('服务器错误,请稍后重试')
}
return Promise.reject(error.response)
}
});

 

posted @ 2019-12-04 15:34  下课后我要去放牛  阅读(361)  评论(0)    收藏  举报