用于socket.io服务器的Node.js客户端
我有一个socket.io服务器运行,并与一个socket.io.js客户端匹配的网页。 一切正常。
但是,我想知道是否可以在另一台机器上运行一个单独的node.js应用程序,它将作为客户端并连接到提到的socket.io服务器?
这应该是可能的使用Socket.IO客户端: https : //github.com/LearnBoost/socket.io-client
在前面给出的解决scheme中添加示例。 通过使用socket.io-client
https://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'); });
跑 :
打开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 。