完善了token认证以及接口错误提示

pull/6/head
yzw 2022-12-09 10:40:16 +08:00
parent 08676f9968
commit b9a1d64a60
2 changed files with 27 additions and 27 deletions

View File

@ -2,14 +2,17 @@ import { login, logout, getInfo } from '@/api/user'
import { resetRouter } from '@/router'
const getDefaultState = () => {
return {}
return {
token: '',
id_card: ''
}
}
const state = getDefaultState()
const mutations = {
RESET_STATE: (state) => {
state = {}
state = getDefaultState()
},
SET_TOKEN: (state, token) => {
state.token = token
@ -27,10 +30,10 @@ const actions = {
login({ user_num: username.trim(), password: password }).then(response => {
commit('SET_TOKEN', response.token)
commit('SET_ID_CARD', username)
// 存储到本地
if (response.code == 0) {
sessionStorage['zssr_token'] = response.token;
}
// 存储到本地 关闭页面后,自动登录的功能还在考虑
// if (response.code == 0) {
// sessionStorage['zssr_token'] = response.token;
// }
resolve()
}).catch(error => {
reject(error)
@ -62,7 +65,6 @@ const actions = {
// user logout
logout({ commit, state }) {
return new Promise((resolve, reject) => {
clearSession();
resetRouter();
commit('RESET_STATE');
resolve();

View File

@ -12,22 +12,21 @@ const service = axios.create({
// request interceptor
service.interceptors.request.use(
// config => {
// // do something before request is sent
// if (store.getters.token) {
// // let each request carry token
// // ['X-Token'] is a custom headers key
// // please modify it according to the actual situation
// config.headers['X-Token'] = getToken()
// }
// return config
// },
// error => {
// // do something with request error
// console.log(error) // for debug
// return Promise.reject(error)
// }
config => {
// do something before request is sent
if (store.getters.token) {
// let each request carry token
// ['X-Token'] is a custom headers key
// please modify it according to the actual situation
config.headers['Zssr-Token'] = store.getters.token
}
return config
},
error => {
// do something with request error
console.log(error) // for debug
return Promise.reject(error)
}
)
// response interceptor
@ -42,6 +41,7 @@ service.interceptors.response.use(
* Here is just an example
* You can also judge the status by HTTP Status Code
*/
/* response => {
const res = response.data
@ -83,21 +83,19 @@ service.interceptors.response.use(
response => {
const res = response.data
return res;
// 状态码
if (res.code !== 0) {
Message({
message: res.msg || 'Error check your token or method',
message: `${res.code}: ${res.msg}` || 'Error check your token or method',
type: 'error',
duration: 2 * 1000
})
console.log(res.code)
return Promise.reject(new Error(res.msg || 'Error'))
} else{
return res
}
},
error => {
console.log('err' + error)
Message({
message: error.message,
type: 'error',