This commit is contained in:
左哥 2025-07-16 22:37:40 +08:00
parent f68ced6fca
commit decaf470dd
2 changed files with 17 additions and 2 deletions

View File

@ -1,6 +1,19 @@
// 在登录成功后请调用 resetTokenInvalid() 重置 isTokenInvalid 标志
let isTokenInvalid = false;
const baseUrl = 'https://ddbs.1024tool.vip/'; const baseUrl = 'https://ddbs.1024tool.vip/';
let isNavigatingToLogin = false; let isNavigatingToLogin = false;
// 重置 token 失效标志(登录成功后调用)
export function resetTokenInvalid() {
isTokenInvalid = false;
}
function request(url, method = 'GET', data = {}) { function request(url, method = 'GET', data = {}) {
// 如果 token 已失效,直接中断请求
if (isTokenInvalid) {
return Promise.reject({ code: 10103, message: '登录已失效,请重新登录' });
}
const header = { const header = {
'content-type': 'application/json', 'content-type': 'application/json',
// 有其他content-type需求加点逻辑判断处理即可 // 有其他content-type需求加点逻辑判断处理即可
@ -20,6 +33,7 @@ function request(url, method = 'GET', data = {}) {
success(res) { success(res) {
if (res.data.code) { if (res.data.code) {
if (res.data.code == 10103) { if (res.data.code == 10103) {
isTokenInvalid = true;
wx.removeStorageSync('access_token'); wx.removeStorageSync('access_token');
if (!isNavigatingToLogin) { if (!isNavigatingToLogin) {
const pages = getCurrentPages(); const pages = getCurrentPages();
@ -35,6 +49,7 @@ function request(url, method = 'GET', data = {}) {
} }
} }
reject(res.data); reject(res.data);
return;
} }
wx.showToast({ wx.showToast({
title: res.data.message, title: res.data.message,

View File

@ -1,5 +1,5 @@
import request from '~/api/request'; import request from '~/api/request';
import { resetTokenInvalid } from '~/api/request';
import aesCryptoJS from '~/utils/aesCryptoJS.js'; import aesCryptoJS from '~/utils/aesCryptoJS.js';
Page({ Page({
@ -47,7 +47,7 @@ Page({
return; return;
} }
resetTokenInvalid()
const res = await request('doctor/login', 'post', { const res = await request('doctor/login', 'post', {
password: aesCryptoJS(this.data.password), password: aesCryptoJS(this.data.password),
mobile: this.data.mobile mobile: this.data.mobile