feat: 修复ws主动断开问题|精简连接逻辑,移除不必要的状态和日志

This commit is contained in:
MatrixSeven
2025-08-11 10:04:23 +08:00
parent e893ff4e2f
commit e1d163f80c
3 changed files with 23 additions and 27 deletions

View File

@@ -50,11 +50,7 @@ export const WebRTCFileTransfer: React.FC = () => {
isConnected,
isConnecting,
isWebSocketConnected,
connectionError,
isTransferring,
progress,
error,
receivedFiles,
connect,
disconnect,
sendFile,

View File

@@ -42,10 +42,11 @@ export const WebRTCTextReceiver: React.FC<WebRTCTextReceiverProps> = ({
// 连接所有传输通道
const connectAll = useCallback(async (code: string, role: 'sender' | 'receiver') => {
console.log('=== 连接所有传输通道 ===', { code, role });
await Promise.all([
textTransfer.connect(code, role),
fileTransfer.connect(code, role)
]);
await connection.connect(code, role);
// await Promise.all([
// textTransfer.connect(code, role),
// fileTransfer.connect(code, role)
// ]);
}, [textTransfer, fileTransfer]);
// 是否有任何连接

View File

@@ -1,4 +1,3 @@
import { UrlSource } from './../../../node_modules/lightningcss/node/ast.d';
import { useState, useRef, useCallback } from 'react';
import { config } from '@/lib/config';
@@ -85,28 +84,28 @@ export function useSharedWebRTCManager(): WebRTCConnection {
// 清理连接
const cleanup = useCallback(() => {
console.log('[SharedWebRTC] 清理连接');
if (timeoutRef.current) {
clearTimeout(timeoutRef.current);
timeoutRef.current = null;
}
// console.log('[SharedWebRTC] 清理连接');
// if (timeoutRef.current) {
// clearTimeout(timeoutRef.current);
// timeoutRef.current = null;
// }
if (dcRef.current) {
dcRef.current.close();
dcRef.current = null;
}
// if (dcRef.current) {
// dcRef.current.close();
// dcRef.current = null;
// }
if (pcRef.current) {
pcRef.current.close();
pcRef.current = null;
}
// if (pcRef.current) {
// pcRef.current.close();
// pcRef.current = null;
// }
if (wsRef.current) {
wsRef.current.close();
wsRef.current = null;
}
// if (wsRef.current) {
// wsRef.current.close();
// wsRef.current = null;
// }
currentRoom.current = null;
// currentRoom.current = null;
}, []);
// 创建 Offer