This commit is contained in:
zk
2023-12-21 14:07:18 +08:00
parent 9230f659c1
commit 5a33aa1df4
11 changed files with 54 additions and 19 deletions
+8 -8
View File
@@ -1,4 +1,4 @@
import { onMounted, onUnmounted, ref } from 'vue';
import { ref } from 'vue';
import { getAppEnvConfig } from '/@/utils/env.ts';
import { useUserStore } from '/@/store/modules/user.ts';
import { getAuthCache } from '/@/utils/auth.ts';
@@ -33,7 +33,7 @@ export function useSocket(p = basicPath) {
//心跳检测
const heartCheck = {
timeout: 1000 * 10, //1分钟发一次心跳
timeout: 1000 * 50, //50s发一次心跳
timeoutObj: null,
serverTimeoutObj: null,
reset: function () {
@@ -47,10 +47,10 @@ export function useSocket(p = basicPath) {
//这里发送一个心跳,后端收到后,返回一个心跳消息,
//onmessage拿到返回的心跳就说明连接正常
if (socket.value.readyState === WebSocket.OPEN) {
//console.log('p1' + new Date().toLocaleString());
console.log('连接正常' + new Date().toLocaleString());
socket.value.send('ping');
} else {
//console.log('p2');
console.log('连接断开');
init();
}
self.serverTimeoutObj = setTimeout(function () {
@@ -74,20 +74,20 @@ export function useSocket(p = basicPath) {
socket.value.onclose = function () {
reconnect(path.value);
//console.log('连接关闭!:', new Date().toLocaleString());
console.log('连接关闭', new Date().toLocaleString());
};
socket.value.onerror = function () {
reconnect(path.value);
//console.log('连接错误!');
console.log('连接错误');
};
socket.value.onopen = function () {
heartCheck.reset().start(); //心跳检测重置
//console.log('连接成功!' + new Date().toLocaleString());
console.log('连接成功:' + new Date().toLocaleString());
};
socket.value.onmessage = function (event) {
//如果获取到消息,心跳检测重置
heartCheck.reset().start(); //拿到任何消息都说明当前连接是正常的
//console.log('收到消息:', event);
console.log('收到消息:', event.data);
if (event.data != 'pong') {
let data = JSON.parse(event.data);
socketData.value = data;