diff --git a/backend/services/socketService.js b/backend/services/socketService.js index 03418a3..7145fff 100644 --- a/backend/services/socketService.js +++ b/backend/services/socketService.js @@ -50,14 +50,17 @@ export const initializeSocketIO = (httpServer) => { // Verbesserte WebSocket-Upgrade-Logging io.engine.on('upgrade', (req, socket, head) => { console.log(`🔄 Socket.IO Upgrade-Versuch: ${req.url}`); - console.log(` Headers:`, req.headers); + console.log(` Upgrade-Header: ${req.headers.upgrade}`); + console.log(` Connection-Header: ${req.headers.connection}`); + console.log(` Sec-WebSocket-Key: ${req.headers['sec-websocket-key']?.substring(0, 20)}...`); }); io.engine.on('upgradeError', (err, req, socket, head) => { console.error('❌ Socket.IO Upgrade Error:', err.message || err); if (req) { console.error(' URL:', req.url); - console.error(' Headers:', req.headers); + console.error(' Upgrade-Header:', req.headers.upgrade); + console.error(' Connection-Header:', req.headers.connection); console.error(' Method:', req.method); } if (err.stack) { diff --git a/frontend/src/services/socketService.js b/frontend/src/services/socketService.js index f251f6b..486976d 100644 --- a/frontend/src/services/socketService.js +++ b/frontend/src/services/socketService.js @@ -85,14 +85,16 @@ export const connectSocket = (clubId) => { reconnectionDelayMax: 5000, reconnectionAttempts: Infinity, // Unbegrenzte Versuche timeout: 20000, - upgrade: true, + upgrade: true, // Erlaube Upgrade von Polling zu WebSocket forceNew: false, secure: isHttps, // Nur für HTTPS rejectUnauthorized: false, // Für selbst-signierte Zertifikate (nur Entwicklung) // Verbesserte Cookie-Handling withCredentials: true, // Auto-Connect - autoConnect: true + autoConnect: true, + // Erzwinge Upgrade-Versuch nach erfolgreicher Polling-Verbindung + rememberUpgrade: true }); socket.on('connect', () => {