diff --git a/src/api/chat.js b/src/api/chat.js index dd07dcc..d0d2e97 100644 --- a/src/api/chat.js +++ b/src/api/chat.js @@ -1,4 +1,6 @@ -import request from '@/utils/request.js' + +import { request, request2 } from '@/utils/request.js'; + export const getFriendListService = (data) => { const params = new URLSearchParams(); diff --git a/src/api/cid.js b/src/api/cid.js index 35ff5b1..204f41f 100644 --- a/src/api/cid.js +++ b/src/api/cid.js @@ -1,4 +1,5 @@ -import request from '@/utils/request.js' + +import { request, request2 } from '@/utils/request.js'; export const runCIDService = (data) => { const params = new URLSearchParams(); diff --git a/src/api/device.js b/src/api/device.js index b45e29c..b6b0bff 100644 --- a/src/api/device.js +++ b/src/api/device.js @@ -1,11 +1,12 @@ -import request from '@/utils/request.js' + +import { request, request2 } from '@/utils/request.js'; export const restartDeviceService = (data) => { const params = new URLSearchParams(); for (let key in data) { params.append(key, data[key]) } - return request.post('/device/restart', params, { "headers": { 'token': data.token } }); + return request2.post('/device/restart', params, { "headers": { 'token': data.token } }); } export const updateDeviceService = (data) => { @@ -13,7 +14,7 @@ export const updateDeviceService = (data) => { for (let key in data) { params.append(key, data[key]) } - return request.post('/device/update_device', params, { "headers": { 'token': data.token } }); + return request2.post('/device/update_device', params, { "headers": { 'token': data.token } }); } export const deleteDeviceService = (data) => { @@ -21,7 +22,7 @@ export const deleteDeviceService = (data) => { for (let key in data) { params.append(key, data[key]) } - return request.post('/device/delete_device', params, { "headers": { 'token': data.token } }); + return request2.post('/device/delete_device', params, { "headers": { 'token': data.token } }); } export const addDeviceService = (data) => { @@ -29,7 +30,7 @@ export const addDeviceService = (data) => { for (let key in data) { params.append(key, data[key]) } - return request.post('/device/add_device', params, { "headers": { 'token': data.token },'Content-Type': 'application/json' }); + return request2.post('/device/add_device', params, { "headers": { 'token': data.token },'Content-Type': 'application/json' }); } export const getDeviceListService = (data) => { @@ -38,8 +39,8 @@ export const getDeviceListService = (data) => { params.append(d, data[d]); } // request.headers["Content-Type"] = "application/json"; - request.defaults.headers["token"] = data.token.value; - return request.post('/device/get_device_list', params, { + request2.defaults.headers["token"] = data.token.value; + return request2.post('/device/get_device_list', params, { headers: { 'token': data.token, // 将 token 替换为您的令牌值 } diff --git a/src/api/group.js b/src/api/group.js index f9fd9dc..4776c07 100644 --- a/src/api/group.js +++ b/src/api/group.js @@ -1,5 +1,4 @@ -import request from '@/utils/request.js' - +import { request, request2 } from '@/utils/request.js'; export const updateDeviceService = (data) => { diff --git a/src/api/im.js b/src/api/im.js index 6cedc58..2ab9b89 100644 --- a/src/api/im.js +++ b/src/api/im.js @@ -1,4 +1,4 @@ -import request from '@/utils/request.js' +import { request, request2 } from '@/utils/request.js'; export const getImKeyService = (Data) => { const params = new URLSearchParams(); diff --git a/src/api/user.js b/src/api/user.js index 308b04c..c9bdd48 100644 --- a/src/api/user.js +++ b/src/api/user.js @@ -1,4 +1,4 @@ -import request from '@/utils/request.js' +import { request, request2 } from '@/utils/request.js'; import md5 from 'js-md5'; export const loginService = (loginData) => { diff --git a/src/api/video.js b/src/api/video.js index 7452818..c76ac9b 100644 --- a/src/api/video.js +++ b/src/api/video.js @@ -1,18 +1,20 @@ -import request from '@/utils/request.js' + +import { request, request2 } from '@/utils/request.js'; + export const playVideoService = (data) => { const params = new URLSearchParams(); for (let key in data) { params.append(key, data[key]) } - return request.post('/video', params, Headers = { 'Accept': 'application/vnd.apple.mpegurl','token': data.token }); + return request2.post('/video', params, Headers = { 'Accept': 'application/vnd.apple.mpegurl','token': data.token }); } export const delayVideoService = (data) => { const params = new URLSearchParams(); for (let key in data) { params.append(key, data[key]) } - return request.post('/video/delay', params, { headers : {'token': data.token }}); + return request2.post('/video/delay', params, { headers : {'token': data.token }}); } export const quashVideoService = (data) => { @@ -20,7 +22,7 @@ export const quashVideoService = (data) => { for (let key in data) { params.append(key, data[key]) } - return request.post('/video/quash_option', params, { headers : {'token': data.token }}); + return request2.post('/video/quash_option', params, { headers : {'token': data.token }}); } function getTimeString(time) { let date = new Date(time); @@ -64,8 +66,8 @@ export const getVideoListService = (data) => { params.append(key, data[key]) } // request.headers["Content-Type"] = "application/json"; - request.defaults.headers["token"] = data.token.value; - return request.post('/video/get_video_list', params, { + request2.defaults.headers["token"] = data.token.value; + return request2.post('/video/get_video_list', params, { headers: { 'token': data.token, // 将 token 替换为您的令牌值 } diff --git a/src/utils/request.js b/src/utils/request.js index 8c11b7d..11c8120 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -1,18 +1,23 @@ import axios from "axios"; import router from "@/router/index.js"; -const baseURL = "https://gep.ljsea.xyz/"; +//const baseURL = "https://gep.ljsea.xyz/"; //const baseURL= "http://localhost:8083"; //const baseURL="https://pm.ljsea.top"; +const baseURL = "https://tx.ljsea.top/"; +const baseURL2 = "https://gs.ljsea.top/"; const request = axios.create({ baseURL: baseURL, }); +const request2 = axios.create({ + baseURL: baseURL2, +}); request.interceptors.response.use( result => { if(result.status!==200 ){ router.push("/login") } - if(result.data.message==="NOT_LOGIN"||result.data.code==2 || result.data.code ===3 ||result.data.code ===4){ + if(result.data.message==="NOT_LOGIN"|| [2, 3, 4].includes(result.data.code)){ alert("登录失效,请重新登录!") localStorage.removeItem("token"); router.push("/login") @@ -35,6 +40,37 @@ request.interceptors.response.use( } ) request.interceptors.request.use( - ) -export default request; \ No newline at end of file + +request2.interceptors.response.use( + result => { + if(result.status!==200 ){ + router.push("/login") + } + if(result.data.message==="NOT_LOGIN"|| [2, 3, 4].includes(result.data.code)){ + alert("登录失效,请重新登录!") + localStorage.removeItem("token"); + router.push("/login") + return + } + if(result.data.code == 7){ + alert("该用户已存在,请重新输入!"); + return null + } + + if(result.data.code == 1){ + alert("请求失败,请稍后重试!"); + }else{ + return result.data + } + }, + error => { + alert("请求失败,请稍后重试!"); + return Promise.reject(error); + } +) +request2.interceptors.request.use() + + + +export { request, request2 }; \ No newline at end of file diff --git a/src/views/Chat.vue b/src/views/Chat.vue index 2fa6d01..368181a 100644 --- a/src/views/Chat.vue +++ b/src/views/Chat.vue @@ -142,6 +142,7 @@ export default { data() { return { ip: "", + wss : "wss://tx.ljsea.top", tableData: [], tokenData: { token: localStorage.getItem("token"), @@ -163,6 +164,7 @@ export default { eventSource: null, // 事件源 uid: localStorage.getItem("userId"), currentMsg:"", + socket: null, MsgList: [], groupList: [], hasUnreadMsg: {}, // 未读消息, key为用户id,value为true/false @@ -321,7 +323,7 @@ export default { } else { console.log("浏览器支持WebSocket"); let socketUrl = - "wss://gep.ljsea.xyz/im/ws_v2?to_user_id=" + + this.wss + "/im/ws_v2?to_user_id=" + this.to_user_id + "&token=" + this.tokenData.token; @@ -486,6 +488,10 @@ export default { } }, handleMenuSelect(val) { + if (this.socket) { + this.socket.close(); + this.socket = null; + } router.push(val); }, toVideoList() { @@ -519,9 +525,14 @@ export default { this.handleGetMessage(this.userList[0].id); }, onUnmounted() { + console.log("unmounted"); if (this.eventSource) { this.eventSource.close(); } + if (this.socket) { + this.socket.close(); + this.socket = null; + } }, }; diff --git a/src/views/Im.vue b/src/views/Im.vue index 2c3dddc..cf6e2bd 100644 --- a/src/views/Im.vue +++ b/src/views/Im.vue @@ -67,6 +67,7 @@ export default { users: [{ username: "admin" }, { username: "zhang" }], chatUser: "2002", text: "", + wss : "wss://ls.ljsea.top", messages: [], session: "", loading: ref(true), @@ -121,6 +122,10 @@ export default { }, 1000); // 每秒(1000毫秒)执行一次 }, handleMenuSelect(val) { + if (this.socket) { + this.socket.close(); + this.socket = null; + } router.push(val); }, stopInterval() { @@ -278,7 +283,7 @@ export default { } else { console.log("浏览器支持WebSocket"); let socketUrl = - "wss://gep.ljsea.xyz/im/ws?to_user_id=" + + this.wss+"/im/ws?to_user_id=" + this.to_user_id + "&token=" + this.tokenData.token;