From b7ec20b3ec22c858f2db3d9285c5e9d38bd8a48f Mon Sep 17 00:00:00 2001 From: 13404089107 <puwei@sinata.cn> Date: 星期四, 08 五月 2025 16:17:19 +0800 Subject: [PATCH] Merge branch 'main' of http://120.76.84.145:10101/gitblit/r/H5/leshan-laboratory --- laboratory/src/utils/request.js | 34 ++++++++++++++++++++++++---------- 1 files changed, 24 insertions(+), 10 deletions(-) diff --git a/laboratory/src/utils/request.js b/laboratory/src/utils/request.js index 0939a41..f1d1c11 100644 --- a/laboratory/src/utils/request.js +++ b/laboratory/src/utils/request.js @@ -1,13 +1,10 @@ import axios from 'axios' import apiConfig from './baseurl' - -import { - Message -} from 'element-ui' - +import { Message } from 'element-ui' +import { encryptBySM4, decryptBySM4 } from './sm4' // 添加decryptBySM4 const service = axios.create({ - baseURL: apiConfig.baseURL, + // baseURL: apiConfig.baseURL, withCredentials: false, // 当跨域请求时发送cookie timeout: 30000, // request timeout }) @@ -16,6 +13,10 @@ service.interceptors.request.use( config => { config['headers']['Authorization'] = `${sessionStorage.getItem('token')}` + + // 判断是否需要加密(只对/api开头的请求进行加密) + const needEncrypt = config.url.startsWith('/api'); + if (config.method == 'get') { if (!config.params) config.params = {}; config.params = { @@ -24,8 +25,8 @@ } if (config.method == 'post') { if (!config.data) config.data = {}; - config.data = { - ...config.data, + if (needEncrypt) { + config.data = { param: encryptBySM4(config.data) }; } } return config @@ -42,11 +43,24 @@ return } const res = response; + + // 新增解密处理:仅处理/api路径的POST响应 + if (res.config.method === 'post' && res.config.url.startsWith('/api')) { + try { + if (res.data && res.data.data) { + // 这里假设使用decryptBySM4进行解密 + res.data.data = decryptBySM4(res.data.data); + } + } catch (e) { + console.error('数据解密失败:', e); + } + } + if (res.data.code == 200) { - if (!res.data.data) { + if (!res.data) { return Promise.resolve({}) } - return Promise.resolve(res.data.data) + return Promise.resolve(res.data) } else { if (res.data.code == 103 || res.data.code == 401) { Message({ -- Gitblit v1.7.1