Browse Source

fix wss maybe?

drawing-pad
Stephanie Gredell 1 month ago
parent
commit
c1100a9c06
  1. 4
      backend/src/services/websocket.service.ts
  2. 7
      frontend/src/pages/TicTacToeApp.tsx

4
backend/src/services/websocket.service.ts

@ -5,7 +5,7 @@ import { getGame, addPlayer, removePlayer, makeMove, resetGame, joinQueue, broad
let wss: WebSocketServer | null = null; let wss: WebSocketServer | null = null;
export function createWebSocketServer(server: any) { export function createWebSocketServer(server: any) {
wss = new WebSocketServer({ server, path: '/ws' }); wss = new WebSocketServer({ server, path: '/api/ws' });
wss.on('connection', (ws: WS, req) => { wss.on('connection', (ws: WS, req) => {
const url = new URL(req.url || '', `http://${req.headers.host}`); const url = new URL(req.url || '', `http://${req.headers.host}`);
@ -242,7 +242,7 @@ export function createWebSocketServer(server: any) {
}); });
}); });
console.log('✅ WebSocket server started on /ws'); console.log('✅ WebSocket server started on /api/ws');
} }
export function getWebSocketServer(): WebSocketServer | null { export function getWebSocketServer(): WebSocketServer | null {

7
frontend/src/pages/TicTacToeApp.tsx

@ -20,10 +20,9 @@ export function TicTacToeApp() {
useEffect(() => { useEffect(() => {
// Get WebSocket URL - connect to backend server // Get WebSocket URL - connect to backend server
const apiUrl = import.meta.env.VITE_API_URL || 'http://localhost:3000/api'; const apiUrl = import.meta.env.VITE_API_URL || 'http://localhost:3000/api';
const backendUrl = apiUrl.replace('/api', ''); const wsProtocol = apiUrl.startsWith('https') ? 'wss:' : 'ws:';
const wsProtocol = backendUrl.startsWith('https') ? 'wss:' : 'ws:'; const wsHost = apiUrl.replace(/^https?:\/\//, '').replace('/api', '');
const wsHost = backendUrl.replace(/^https?:\/\//, ''); const wsUrl = `${wsProtocol}//${wsHost}/api/ws?room=default&playerId=${playerIdRef.current}`;
const wsUrl = `${wsProtocol}//${wsHost}/ws?room=default&playerId=${playerIdRef.current}`;
const ws = new WebSocket(wsUrl); const ws = new WebSocket(wsUrl);
wsRef.current = ws; wsRef.current = ws;

Loading…
Cancel
Save