2011-12-31 11 views
41

Duplicar posibles:
socket.io.js not foundNo encontraste socket.io.js

estoy usando la versión más actualizada de Socket.IO y estoy tratando de la primera ejemplo en la página de cómo usar, sin embargo, recibo un error cuando trato de llegar a '/socket.io/socket.io.js'

La consola de Javascript indica que el archivo no existe. Cuando reviso mi navegador (ambos http://socket.io/socket.io.js y https://socket.io/socket.io.js), tampoco está allí. ¿La documentación está desactualizada? ¿Dónde está el archivo socket.io.js que se supone que debo incluir?

Estoy ejecutando esto en una Mac con NodeJS ejecutando mi servidor de app.js.

He intentado usar "http://cdn.socket.io/stable/socket.io.js", pero parece que es una versión anterior (0.6) y la consola de Javascript dice que no tiene la función "conectar". (lo cual es extraño, creo que conectar es una función bastante integral para tener en una biblioteca, pero supongo que no)

Respuesta

64

Su servidor Socket.IO se encargará de brindar la versión correcta de la biblioteca del cliente Socket.IO; no deberías usar uno de otra parte en Internet. A partir del ejemplo superior de the Socket.IO website:

<script src="/socket.io/socket.io.js"></script> 

Esto funciona porque usted envuelve su servidor HTTP en Socket.IO (véase el ejemplo en How To Use) y que intercepta las peticiones de /socket.io/socket.io.js y envía la respuesta adecuada automáticamente.

+3

Entonces, si el servidor se está ejecutando, /socket.io/socket.io.js debería estar allí mágicamente? Tal vez algo está pasando con mi servidor entonces, todo lo que tengo es: 'node app.js información - socket.io started' Así que no estoy seguro de qué más está pasando, la consola de Javascript dice que ese archivo no existe – Esaevian

+0

¿Te importa mostrar tu código de servidor y cliente? Puede agregarlo a su pregunta en bloques de código o colocarlos en http://gist.github.com/ o http: // pastebin.com y vincularlos en su pregunta. Hace que sea mucho más fácil determinar qué puede estar yendo mal. :) –

+4

Copié y pegué el código del primer ejemplo aquí: http://socket.io/#how-to-use Sin embargo, cambié el puerto ya que 'node' se quejaba de que ya estaba usando 80. Simplemente lo conecté con primatología que tuve que cambiar el puerto para la llamada socket.io.js, por lo que la línea sería ' ' – Esaevian

0

Sé que esto parece obvio, pero ¿instaló Socket.IO en su servidor? Luego obtendrá una copia local del archivo en '/socket.io/socket.io.js'.

npm install socket.io 
+0

Lo hice. No hay una carpeta llamada socket.io en/en mi máquina. Pude ejecutar "node app.js" muy bien, y el servidor se está ejecutando. – Esaevian

+1

Será en: http://127.0.0.1:1337/socket.io/socket.io.js Reemplace 1337 con el puerto que está escuchando. – benesch

+0

Todo lo que consigo es "¡Vaya! Google Chrome no se pudo conectar a 127.0.0.1:1337" – Esaevian

Cuestiones relacionadas