Files
frontend_hmi_station/src/utils/auth.ts

54 lines
1.1 KiB
TypeScript
Raw Normal View History

2026-01-14 16:35:46 +08:00
import Cookies from 'js-cookie'
import { encrypt } from '@/utils/jsencrypt'
2025-12-23 13:30:25 +08:00
// 30 天
2026-01-14 16:35:46 +08:00
export const expiresTime = 30
2025-12-17 17:00:29 +08:00
export const TokenKey = 'Admin-Token'
2025-12-17 17:00:29 +08:00
export function getToken() {
2026-01-14 16:35:46 +08:00
return Cookies.get(TokenKey)
2025-12-17 17:00:29 +08:00
}
export function setToken(token: string) {
2026-01-14 16:35:46 +08:00
return Cookies.set(TokenKey, token)
2025-12-17 17:00:29 +08:00
}
export function removeToken() {
2026-01-14 16:35:46 +08:00
return Cookies.remove(TokenKey)
2025-12-17 17:00:29 +08:00
}
2025-12-23 13:30:25 +08:00
export interface AccountInfo {
2026-01-14 16:35:46 +08:00
username?: string
password?: string
rememberMe?: 'true' | 'false'
2025-12-23 13:30:25 +08:00
}
2026-01-12 11:46:28 +08:00
export function getRememberMe() {
2026-01-14 16:35:46 +08:00
return Cookies.get('rememberMe')
2026-01-12 11:46:28 +08:00
}
2025-12-23 13:30:25 +08:00
export function getAccount() {
2026-01-14 16:35:46 +08:00
return {
username: Cookies.get('username'),
password: Cookies.get('password'),
}
2025-12-23 13:30:25 +08:00
}
export function setAccount(account: AccountInfo) {
2026-01-14 16:35:46 +08:00
if (account.username)
Cookies.set('username', account.username, { expires: expiresTime })
if (account.password)
Cookies.set('password', encrypt(account.password) as string, {
expires: expiresTime,
})
if (account.rememberMe)
Cookies.set('rememberMe', account.rememberMe, { expires: expiresTime })
2025-12-23 13:30:25 +08:00
}
export function removeAccount() {
2026-01-14 16:35:46 +08:00
Cookies.remove('username')
Cookies.remove('password')
Cookies.remove('rememberMe')
2025-12-23 13:30:25 +08:00
}