socket.io, io n'est pas définie (Erreur JS)
Je viens de commencer avec la prise.io, sa présentation JS Erreur sur la page du client
io n'est pas défini
Comment résoudre ce problème ?
Vous devez vous connecter pour publier un commentaire.
Je viens de commencer avec la prise.io, sa présentation JS Erreur sur la page du client
io n'est pas défini
Comment résoudre ce problème ?
Vous devez vous connecter pour publier un commentaire.
mettre
<script src="http://yournodeserver/socket.io/socket.io.js"></script>
dans votre codeAlternativement, vous pouvez utiliser le Socket.io CA:
J'ai été confrontée au même problème lors de l'utilisation de l'express. Même en mettant le serveur:port à l'intérieur du script ne fonctionnerait pas.Une fois le serveur démarré, je voudrais faire socket en écoute sur ce port, qui était en faute, je suppose.Changer pour ci-dessous fonctionne très bien
Sur le côté Client, je viens d'inclure le script
J'ai un socket application où mon serveur (pas un CDN) est de servir le socket.io.js script. Ainsi, alors que Emmerman est juste de dire que vous devez inclure la balise script dans votre code HTML, l'actif ne sera pas chargé si votre back-end est en bas. Une option est pour vous écrire un côté client JS script qui vérifie io avant d'essayer de l'utiliser socket.io. Si il n'est pas présent (indéfini/null), alors vous pouvez soit conditionnellement montrer autre chose comme, "serveur" ou dans mon cas, je vais mettre une minuterie qui continue à vérifier périodiquement jusqu'à ce que le serveur est rétablie.
[Mise à JOUR 2] Fini par avoir à inclure la balise de script, à vérifier l'existence de
io
de l'objet et de faire une fenêtre.emplacement.reload() au bout de 10 secondes (en utilisantsetTimeout
) (qui finira par trouver que le chargement du script etio
existe, après lequel je peux me connecter au serveur socket.)[Mise à JOUR] je suis le chargement du script avec un appel ajax plutôt que d'utiliser une balise html script. Puis avec le timer, je vérifie périodiquement si le script se charge – éventuellement, il sera quand le serveur est restauré/redémarré. jQuery ref pour charger les scripts JS dynamiquement: http://api.jquery.com/jQuery.getScript/
c'est la version la plus récente de la prise.io pour être inclus.
Envelopper votre code de client '$(document).prêt () " pour jQuery ou d'une autre bibliothèque de fonction similaire. De cette façon, vous serez sûr que votre code s'exécute après la bibliothèque étant chargé.
http://socket.io/download/ - la page officielle de la dernière can.