Cliente Node.js para un servidor socket.io
(3)
Agregando en el ejemplo para la solución dada anterior. Al usar socket.io-client
https://github.com/socketio/socket.io-client
Lado del cliente:
//client.js
var io = require(''socket.io-client'');
var socket = io.connect(''http://localhost:3000'', {reconnect: true});
// Add a connect listener
socket.on(''connect'', function (socket) {
console.log(''Connected!'');
});
socket.emit(''CH01'', ''me'', ''test msg'');
Lado del servidor :
//server.js
var app = require(''express'')();
var http = require(''http'').Server(app);
var io = require(''socket.io'')(http);
io.on(''connection'', function (socket){
console.log(''connection'');
socket.on(''CH01'', function (from, msg) {
console.log(''MSG'', from, '' saying '', msg);
});
});
http.listen(3000, function () {
console.log(''listening on *:3000'');
});
Correr :
Abra la consola 2 y ejecute el node server.js
y el node client.js
Tengo un servidor socket.io en ejecución y una página web coincidente con un cliente socket.io.js. Todo funciona bien
Pero, me pregunto si es posible, en otra máquina, ejecutar una aplicación node.js separada que actuaría como un cliente y se conectaría al servidor socket.io mencionado.
Después de instalar socket.io-client:
npm install socket.io-client
Así es como se ve el código del cliente:
var io = require(''socket.io-client''),
socket = io.connect(''localhost'', {
port: 1337
});
socket.on(''connect'', function () { console.log("socket connected"); });
socket.emit(''private message'', { user: ''me'', msg: ''whazzzup?'' });
Gracias .
Eso debería ser posible usando Socket.IO-client: github.com/LearnBoost/socket.io-client