Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

338
Vistas
IO no está definido - Socket.io

Actualmente estoy trabajando en una página web de chat en tiempo real. Originalmente estaba pensando en usar PHP, pero estoy probando socket.io para el backend.

Tengo un problema en el que la consola del navegador registra Uncaught ReferenceError: io is not defined . He buscado esto muchas veces en este sitio, así como en otros, y la mayoría de las respuestas dicen que se asegure de que su etiqueta <script> tenga el src apuntando a http://localhost:3000/socket.io/socket.io.js y no solo /socket.io/socket.io.js . Ya tengo esto en mi código HTML. Aquí hay un fragmento del código:

índice.html

 <!DOCTYPE html> <html lang="en-us"> <head> <title>Chat</title> <meta charset="utf-8" /> <link rel="stylesheet" href="style.css" type="text/css" /> <script type="text/javascript" src="../libs/jquery.js"></script> <script src="../libs/fontawesome.js" crossorigin="anonymous"></script> <script defer src="http://localhost:3000/socket.io/socket.io.js"></script> </head> <body> <!-- My code here --> <script type="text/javascript" src="script.js"></script> </body> </html>

guión.js

 const socket = io("http://localhost:3000"); socket.on("chat-message", (data) => { console.log(data); });

servidor.js

 const io = require("socket.io")(3000); io.on("connection", (socket) => { socket.emit("chat-message", "Hello World!"); });

Básicamente, todo lo que debería hacer ahora es que cuando un usuario se conecte a la página, el servidor envíe una solicitud al cliente con los data de Hello World! . Luego, el cliente simplemente console.log() estos datos.

Recibo el Error de Uncaught ReferenceError: io is not defined en la consola del NAVEGADOR, y dice que el problema está en script.js en la primera línea: const socket = io("http://localhost:3000"); .

Gracias de antemano. Cualquier y toda ayuda es apreciada.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

La etiqueta defer <script> tiene un atributo diferido, lo que significa que se ejecutará después de que se haya analizado el documento. Esto significa que se ejecuta después de script.js, que no se difiere. Para solucionar esto, simplemente agregue un atributo diferido a la etiqueta defer <script> , ya que los scripts diferidos se ejecutan en el orden en que están definidos.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda