diff --git a/.env.development b/.env.development index 3996134..fa00ae5 100644 --- a/.env.development +++ b/.env.development @@ -5,4 +5,4 @@ VITE_APP_baseApiURL = https://s.dumogu.top/api # 路由的base api VITE_APP_routeBasePath = / VITE_APP_biuldBase = / -VITE_APP_imgPreviewUrl = http://192.168.0.38:21999/robot \ No newline at end of file +VITE_APP_imgPreviewUrl = http://192.168.0.14:9090/robot \ No newline at end of file diff --git a/.env.production b/.env.production index 52e24f3..9ecd74b 100644 --- a/.env.production +++ b/.env.production @@ -4,4 +4,5 @@ VITE_APP_content = 机器人 VITE_APP_baseApiURL = /robot-screen-api # 路由的base api VITE_APP_routeBasePath = /robot-screen-ui -VITE_APP_biuldBase = /robot-screen-ui \ No newline at end of file +VITE_APP_biuldBase = /robot-screen-ui +VITE_APP_imgPreviewUrl = http://192.168.0.38:21999/robot \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 1ad1443..271b664 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,6 +14,7 @@ "codess": "^1.1.5", "copy-to-clipboard": "3.3.3", "cropperjs": "1.6.2", + "crypto-js": "^4.2.0", "echarts": "5.5.1", "flv.js": "^1.6.2", "glob": "11.0.0", @@ -1692,6 +1693,12 @@ "node": ">= 8" } }, + "node_modules/crypto-js": { + "version": "4.2.0", + "resolved": "https://repo.huaweicloud.com/repository/npm/crypto-js/-/crypto-js-4.2.0.tgz", + "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==", + "license": "MIT" + }, "node_modules/css-render": { "version": "0.15.14", "resolved": "https://registry.npmmirror.com/css-render/-/css-render-0.15.14.tgz", diff --git a/package.json b/package.json index 182f65b..feadbad 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ "codess": "^1.1.5", "copy-to-clipboard": "3.3.3", "cropperjs": "1.6.2", + "crypto-js": "^4.2.0", "echarts": "5.5.1", "flv.js": "^1.6.2", "glob": "11.0.0", diff --git a/src/http/request.js b/src/http/request.js index 3032b61..d177db1 100644 --- a/src/http/request.js +++ b/src/http/request.js @@ -4,6 +4,7 @@ */ import axios from 'axios' import { userDataStore } from '@/store/user' +import { encrypt, decrypt } from '@/utils/encrypt' // import { useMessage } from 'naive-ui' import router from '@/router' import { createDiscreteApi } from 'naive-ui' @@ -26,6 +27,8 @@ service.interceptors.request.use( if (userData?.userInfo?.token) { config.headers['Authorization'] = 'Bearer ' + userData?.userInfo?.token + } else { + config.headers['Token'] = 'test' } return config }, @@ -39,7 +42,28 @@ service.interceptors.request.use( let modelShow = false service.interceptors.response.use( (response) => { + response.data = decrypt(response.data) + console.log( + '%c🔍-- 解密后出参 --', + 'background: linear-gradient(90deg, #FF6B6B, #4ECDC4); color: white; padding: 5px 60px; border-radius: 5px; font-weight: bold;', + '', + ) + console.log( + '%c原始数据:', //增加样式 + 'color: #FF6B6B; padding: 5px 0; border-radius: 5px; font-weight: bold;', + '', + '\n', + response.data, + ) + console.log( + '%cJSON格式:', + 'color: #4ECDC4; padding: 5px 0; border-radius: 5px; font-weight: bold;', + '\n', + JSON.stringify(response.data, null, 2), + ) + const data = response.data + if (!data) { return Promise.reject({ msg: '请求发生错误', diff --git a/src/utils/encrypt.js b/src/utils/encrypt.js new file mode 100644 index 0000000..6e335c3 --- /dev/null +++ b/src/utils/encrypt.js @@ -0,0 +1,29 @@ +// 加解密方法 +import CryptoJS from 'crypto-js' + +// const key = 'zhst@bonus@zhst@bonus@1234567890' // 加密密钥 +const key = 'jjbns@jysoft1088' // 加密密钥 +const utf8Key = CryptoJS.enc.Utf8.parse(key) + +// AES 加密(UTF-8 处理) +export const encrypt = (message) => { + const utf8Message = CryptoJS.enc.Utf8.parse(message) + const encrypted = CryptoJS.AES.encrypt(utf8Message, utf8Key, { + mode: CryptoJS.mode.ECB, + padding: CryptoJS.pad.Pkcs7, + }) + return encrypted.toString() +} + +// AES 解密 +export const decrypt = (encryptedBase64) => { + try { + const decrypted = CryptoJS.AES.decrypt(encryptedBase64, utf8Key, { + mode: CryptoJS.mode.ECB, + padding: CryptoJS.pad.Pkcs7, + }) + return JSON.parse(CryptoJS.enc.Utf8.stringify(decrypted)) + } catch (error) { + return encryptedBase64 + } +} diff --git a/src/views/home/components/center-two.vue b/src/views/home/components/center-two.vue index 3db1525..6e0d079 100644 --- a/src/views/home/components/center-two.vue +++ b/src/views/home/components/center-two.vue @@ -3,9 +3,9 @@