client et serveur node.js socket.io
-
28-10-2019 - |
Question
Je souhaite lancer la démo la plus simple de socket.io depuis http://socket.io
Le serveur (app.js) semble fonctionner correctement.
Mais j'ai des problèmes avec le client:
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect('http://localhost');
socket.on('news', function (data) {
console.log(data);
socket.emit('my other event', { my: 'data' });
});
</script>
Où dois-je pointer exactement le premier script src?
Bien sûr, je n'ai pas le chemin
/socket.io/socket.io.js
Dans le dossier public de mon serveur Web
Mon installation est la suivante:
Installation du nœud:
wget http://nodejs.org/dist/node-v0.4.12.tar.gz -P /tmp
mkdir ~/opt
cd ~/opt
tar zxvf /tmp/node-v0.4.12.tar.gz
cd node-v0.4.12
PREFIX=~/opt ./configure
make
make install
echo 'export PATH=~/opt/bin:${PATH}' >> ~/.profile
source ~/.profile
test:
which node
renvoie:
/ home / wopi / opt / bin / node
test:
node -v
renvoie:
v0.4.12
Installation de NodePackageManager:
curl http://npmjs.org/install.sh | sh
test:
which npm
renvoie:
/ home / wopi / opt / bin / npm
test:
npm -v
renvoie
1.0.106
npm install socket.io
renvoie:
socket.io@0.8.7 ./node_modules/socket.io
├── redis@0.6.7
├── policyfile@0.0.4
└── socket.io-client@0.8.7
Alors, comment dois-je pointer vers les bons fichiers js?
La solution
Vous devez pointer la ressource JavaScript vers:
your_ip:port_which_socket_io_isrunning/socket.io/socket.io.js
Exemple:
127.0.0.1:4000/socket.io/socket.io.js
Vérifiez donc le port sur lequel Socket.IO a démarré ..
Autres conseils
/socket.io/socket.io.js est intégré au code serveur socket.io.Vous n'êtes pas obligé de l'héberger sur un serveur séparé.