| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- /**
- * 认证工具类
- */
- const TOKEN_KEY = 'token';
- const USER_INFO_KEY = 'userInfo';
- /**
- * 获取Token
- */
- export function getToken() {
- return uni.getStorageSync(TOKEN_KEY);
- }
- /**
- * 设置Token
- */
- export function setToken(token) {
- return uni.setStorageSync(TOKEN_KEY, token);
- }
- /**
- * 移除Token
- */
- export function removeToken() {
- return uni.removeStorageSync(TOKEN_KEY);
- }
- /**
- * 获取用户信息
- */
- export function getUserInfo() {
- return uni.getStorageSync(USER_INFO_KEY);
- }
- /**
- * 设置用户信息
- */
- export function setUserInfo(userInfo) {
- return uni.setStorageSync(USER_INFO_KEY, userInfo);
- }
- /**
- * 移除用户信息
- */
- export function removeUserInfo() {
- return uni.removeStorageSync(USER_INFO_KEY);
- }
- /**
- * 检查是否已登录
- */
- export function isLoggedIn() {
- const token = getToken();
- return !!token;
- }
- /**
- * 清除所有认证信息
- */
- export function clearAuth() {
- removeToken();
- removeUserInfo();
- }
- /**
- * 登录
- */
- export function login(loginData) {
- return new Promise((resolve, reject) => {
- // 模拟登录API调用
- setTimeout(() => {
- if (loginData.username === 'admin' && loginData.password === 'admin') {
- const token = 'mock-token-' + Date.now();
- const userInfo = {
- id: 1,
- username: loginData.username,
- nickname: '管理员',
- avatar: '/static/avatar.png',
- title: '系统管理员',
- };
- setToken(token);
- setUserInfo(userInfo);
- resolve({
- success: true,
- data: {
- token,
- userInfo,
- },
- });
- } else {
- reject(new Error('用户名或密码错误'));
- }
- }, 1000);
- });
- }
- /**
- * 退出登录
- */
- export function logout() {
- return new Promise((resolve) => {
- clearAuth();
- // 跳转到登录页
- uni.reLaunch({
- url: '/pages/login/login',
- });
- resolve({ success: true });
- });
- }
- /**
- * 检查登录状态并跳转
- */
- export function checkAuth() {
- if (!isLoggedIn()) {
- uni.reLaunch({
- url: '/pages/login/login',
- });
- return false;
- }
- return true;
- }
|