diff --git a/common/request.js b/common/request.js index ba82082..6464556 100644 --- a/common/request.js +++ b/common/request.js @@ -135,16 +135,18 @@ export function request(options = {}) { } // 每次请求都自动添加 token(登录接口除外) - // 确保所有后端请求都携带 token 进行身份验证 + // 并在需要 token 却不存在时,直接拦截请求并跳转登录页 if (needToken && !isLoginApi(fullUrl)) { const token = getToken() - if (token) { - // 每次请求都添加 token 到 Authorization header - requestHeader['Authorization'] = `Bearer ${token}` - } else { - // 如果没有 token,移除可能存在的旧 Authorization header - delete requestHeader['Authorization'] + if (!token) { + console.warn('[Request] token 为空,拦截请求并跳转到登录页面') + redirectToLogin() + // 直接抛错中断后续逻辑(包括 uni.request) + return Promise.reject(new Error('未登录或登录已失效,请先登录')) } + + // 每次请求都添加 token 到 Authorization header + requestHeader['Authorization'] = `Bearer ${token}` } // 添加 roleName 和 scenario 到 header(从登录响应中获取) diff --git a/pages-subpackage/ai_qa/general_qa/general_qa.vue b/pages-subpackage/ai_qa/general_qa/general_qa.vue index d29bcc2..abfe764 100644 --- a/pages-subpackage/ai_qa/general_qa/general_qa.vue +++ b/pages-subpackage/ai_qa/general_qa/general_qa.vue @@ -1,50 +1,201 @@