Узел.JS клиент для a socket.io сервер
У меня есть socket.io запущенный сервер и соответствующая веб-страница с socket.io.js клиент. Все работает нормально.
но мне интересно, можно ли на другой машине запустить отдельный узел.приложение js, которое будет выступать в качестве клиента и подключаться к упомянутому socket.io сервер?
3 ответов:
Это должно быть возможно с помощью Socket. IO-client:https://github.com/LearnBoost/socket.io-client
добавление в пример для решения, приведенного ранее. С помощью
socket.io-clienthttps://github.com/socketio/socket.io-clientКлиентской Стороне:
//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');Сервер :
//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'); });Run:
Откройте консоль 2 и запустите
node server.jsиnode client.js
после установки socket. io-client:
npm install socket.io-clientвот как выглядит клиентский код:
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?' });спасибо alessioalex.
Comments