const express = require('express'); const cors = require('cors'); const { WebSocketServer } = require('ws'); // Importa la clase WebSocketServer const app = express(); // Inicializa Express // Habilita CORS para permitir conexiones desde React app.use(cors()); // Configuración del puerto HTTP const HTTP_PORT = 3000; // Inicia el servidor HTTP con Express const httpServer = app.listen(HTTP_PORT, () => { console.log(`Servidor HTTP ejecutándose en http://tucaranomiente:${HTTP_PORT}`); }); // Ruta principal del servidor HTTP app.get('/', (req, res) => { res.send('Servidor Node.js con Express funcionando correctamente'); }); // Configuración del puerto WebSocket const WS_PORT = 4000; // Cambia este puerto si necesitas evitar conflictos // Inicia el servidor WebSocket en un puerto separado const wss = new WebSocketServer({ port: WS_PORT }); wss.on('connection', (ws) => { console.log('Cliente WebSocket conectado'); // Maneja mensajes recibidos del cliente ws.on('message', (message) => { console.log('Mensaje recibido del cliente:', message); // Responde al cliente ws.send(`Servidor recibió: ${message}`); }); // Maneja la desconexión del cliente ws.on('close', () => { console.log('Cliente WebSocket desconectado'); }); // Maneja errores en la conexión WebSocket ws.on('error', (error) => { console.error('Error en WebSocket:', error); }); }); console.log(`Servidor WebSocket ejecutándose en ws://tucaranomiente:${WS_PORT}`);