Vous êtes sur la page 1sur 3

Je vous suggère d'utiliser Socket.io avec node.js.

Installez et téléchargez les bibliothèques


depuis http://socket.io/ . Vous pouvez l'exécuter avec votre serveur Apache sans problème.

Créez d'abord un serveur de nœud :

var http = require('http')


, url = require('url')
, fs = require('fs')
, io = require('../')//path to your socket.io lib
, sys = require(process.binding('natives').util ? 'util' :
'sys')
, server;

server = http.createServer(function(req, res){


var path = url.parse(req.url).pathname;
}),

server.listen(8084);//This could be almost any port number

Deuxièmement, exécutez votre serveur à partir de la ligne de commande en utilisant :

node /path/to/your/server.js

Troisièmement, connectez-vous au socket en utilisant js côté client :

var socket = new io.Socket(null, {port: 8084,


rememberTransport: false});
socket.connect();

Vous devrez également inclure le côté client socket.io lib.

Envoyez des données du côté client au serveur de nœud en utilisant :

socket.send({data:data});

Votre server.js devrait également avoir des fonctions pour traiter les requêtes :

io.on('connection', function(client){
//action when client connets

client.on('message', function(message){
//action when client sends msg
});

client.on('disconnect', function(){
//action when client disconnects
});
});

Il existe deux manières principales d'envoyer des données du serveur au client :


client.send({ data: data});//sends it back to the client
making the request

et

client.broadcast({ data: data});//sends it too every client


connected to the server
Partager
Améliorer cette réponse
Suivre
modifié le 16 février 2011 à 11:30
répondu le 16 février 2011 à 11:07

Trousse
4 075 7 7 insignes d'or 39 39 insignes d'argent 62 62 insignes de bronze

• 3

salut @Kit merci pour cette excellente réponse. Je suis encore un peu confus quant à la
partie connexion à Apache. Cela vous dérangerait-il d'ajouter des commentaires/codes
à votre réponse pour rendre la partie Apache plus claire ?

– Tim Peterson

21 juil. 2012 à 18:30

• 1

Qu'en est-il de la même politique d'origine ? Vous ne pourrez pas passer d'appels vers
un autre port en utilisant socket io, non ?

– Zaptree

8 août 2012 à 17h50

• Merci ça m'a beaucoup aidé à démarrer

– Aéré

27 janv. 2014 à 15:34

• @KitCarrau lorsque nous avons un fichier d'extension php par exemple ->
index.phpalors nous avons besoin d'apache pour l'exécuter et en même temps si
nous devons charger notre socket.io <script>côté client -> index.phppour
activer notre node.jset socket.iofonctionnalité, cela ne fonctionne pas. Une des
raisons est portoù nous ne pouvons pas utiliser apache et nodejs port no.même
– SOuřaan Gřg

23 décembre 2015 à 17:12

• et si nous voulons utiliser un port différent pour ces deux serveurs distincts apacheet
nodejsalors comment pouvons-nous courir ensemble notre phpet nodejs ??

– SOuřaan Gřg

23 décembre 2015 à 17:14

Vous aimerez peut-être aussi