refactor: 添加username到cookies

This commit is contained in:
jmal 2023-03-08 14:21:23 +08:00
parent fd292bcb54
commit 4b3c21e0d1
5 changed files with 24 additions and 8 deletions

View File

@ -27,7 +27,7 @@ router.beforeEach(async(to, from, next) => {
NProgress.done()
} else {
// 非登录页面
const hasGetUserInfo = store.getters.name
const hasGetUserInfo = store.getters.userInfo.username
if (hasGetUserInfo) {
// 存在用户信息
setMenuList(next)

View File

@ -11,7 +11,9 @@ import {
setRememberName,
removeRememberName,
setShareToken,
getShareToken, removeShareToken
getShareToken,
removeShareToken,
getUsername, setUsername,
} from '@/utils/auth'
import { setLogo } from '@/utils/logo'
import { resetRouter } from '@/router'
@ -24,7 +26,7 @@ const getDefaultState = () => {
return {
token: getToken(),
shareToken: getShareToken(),
name: '',
name: getUsername(),
showName: '',
userInfo: {},
avatar: '',
@ -97,6 +99,7 @@ const actions = {
const { data } = response
commit('SET_TOKEN', data.token)
setToken(data.token)
setUsername(username.trim())
commit('SET_USERID', data.userId)
setConsumerId(data.userId)
if(rememberMe){

View File

@ -1,6 +1,7 @@
import Cookies from 'js-cookie'
const tokenKey = 'jmal_token'
const usernameKey = 'username'
const shareTokenKey = 'share-token'
const consumerId = 'consumerId'
const rememberName = 'rememberName'
@ -21,6 +22,14 @@ export function getToken() {
return Cookies.get(tokenKey)
}
export function getUsername() {
return Cookies.get(usernameKey)
}
export function setUsername(username) {
return Cookies.set(usernameKey, username)
}
export function getShareToken() {
return Cookies.get(shareTokenKey)
}
@ -34,7 +43,8 @@ export function setToken(token) {
}
export function removeToken() {
return Cookies.remove(tokenKey)
Cookies.remove(tokenKey)
Cookies.remove(usernameKey)
}
export function removeShareToken() {

View File

@ -1,6 +1,6 @@
// import { MessageBox, Message } from 'element-ui'
import store from '@/store'
import {getShareToken, getToken} from '@/utils/auth'
import {getShareToken, getToken, getUsername} from '@/utils/auth'
// create an axios instance
const service = axios.create({
@ -16,6 +16,9 @@ service.interceptors.request.use(
if (store.getters.token) {
config.headers['jmal-token'] = getToken()
}
if (store.getters.name) {
config.headers['name'] = getUsername()
}
if (store.getters.shareToken) {
config.headers['share-token'] = getShareToken()
}

View File

@ -4,17 +4,17 @@ import ws from './websocket_config';
import Bus from '@/assets/js/bus'
export function toConnection(username,token) {
connect(username,token);
connect(username, token);
// 断开重连机制,尝试发送消息,捕获异常发生时重连
ws.timer = setInterval(() => {
try {
if(ws.isConnected){
ws.stompClient.send("test");
}else{
connect(username,token);
connect(username, token);
}
} catch (err) {
connect(username,token);
connect(username, token);
}
}, 10000);
}