1.修改websocket,多窗口可以同时弹窗
This commit is contained in:
2025-05-23 14:16:01 +08:00
parent 736ee91e93
commit 25b8acdda6
+5 -3
View File
@@ -57,7 +57,7 @@ export function useSocket(p = basicPath, hasTimestamp: boolean = true) {
//onmessage拿到返回的心跳就说明连接正常
if (socket.value.readyState === WebSocket.OPEN) {
//console.log('连接正常' + new Date().toLocaleString());
socket.value.send('ping');
socket.value.send(`ping/${path.value.substring(path.value.lastIndexOf('/') + 1)}${socket.value.time}`);
} else {
//console.log('连接断开');
init();
@@ -72,6 +72,7 @@ export function useSocket(p = basicPath, hasTimestamp: boolean = true) {
};
function init() {
const date = new Date().getTime();
if (!t) {
return router?.replace('/login');
}
@@ -82,11 +83,12 @@ export function useSocket(p = basicPath, hasTimestamp: boolean = true) {
// 实例化socket
//判断是否需要时间戳
if (hasTimestamp) {
socket.value = new WebSocket(path.value + Date.now(), [t]);
socket.value = new WebSocket(path.value + date, [t]);
} else {
socket.value = new WebSocket(path.value, [t]);
socket.value = new WebSocket(path.value + date, [t]);
}
socket.value['time'] = date;
socket.value.onclose = function () {
reconnect(path.value);
// //console.log('连接关闭', new Date().toLocaleString());