Tengo mi sistema de juego y chat localhost que funciona cuando lo uso en mi computadora portátil a través de Google Chrome y otro en Firefox. puede enviar mensajes y ver los mensajes de los demás con sus nombres.
Sin embargo, cuando voy a conectarme usando mi escritorio, no funciona. ¿Puede ayudarme a averiguar por qué no se conecta?
Aquí está mi código:
secuencia de comandos.js:
const socket = io.connect() const messageContainer = document.getElementById('message-container') const messageForm = document.getElementById('send-container') const messageInput = document.getElementById('message-input') const name = sessionStorage.getItem("chatUsername"); appendMessage('You joined') socket.emit('new-user', name) socket.on('chat-message', data => { appendMessage(`${data.name}: ${data.message}`) }) socket.on('user-connected', name => { appendMessage(`${name} connected`) }) socket.on('user-disconnected', name => { appendMessage(`${name} disconnected`) }) messageForm.addEventListener('submit', e => { e.preventDefault() const message = messageInput.value appendMessage(`You: ${message}`) socket.emit('send-chat-message', message) messageInput.value = '' }) function appendMessage(message) { const messageElement = document.createElement('div') messageElement.innerText = message messageContainer.append(messageElement) }Servidor.js
const io = require("socket.io")(3000, { cors: { origin: "*", }, }); const users = {} io.on('connection', socket => { socket.on('new-user', name => { users[socket.id] = name //socket.broadcast.emit('user-connected', name) }) socket.on('send-chat-message', message => { socket.broadcast.emit('chat-message', { message: message, name: users[socket.id] }) }) socket.on('disconnect', () => { //socket.broadcast.emit('user-disconnected', users[socket.id]) delete users[socket.id] }) })Recibo este error en mi escritorio cuando intento conectarme a través de:
failed to http://192.***.*.**/socket.io/socket.io.js load resources the server responded with a status of 404 (Not found)y..
uncaught ReferenceError: io is not defined** están ahí para cubrir mi ip.
Estoy usando mi dirección IP para conectarme a mi computadora locahost (portátil) desde mi escritorio para jugar mi juego. Si necesita actualizar el código, hágalo. Estoy súper perplejo con esto y no estoy seguro de por qué no funciona. (pd soy super nuevo en todo esto)
¡Gracias por adelantado!