我有一个正在运行的socket.io服务器和一个与socket.io.js客户端相匹配的网页。一切正常。
但是,我想知道是否可以在另一台机器上运行单独的node.js应用程序,该应用程序将充当客户端并连接到前面提到的socket.io服务器。
发布于 2012-05-22 22:05:08
使用Socket.IO-client:https://github.com/LearnBoost/socket.io-client应该可以做到这一点
发布于 2016-02-16 16:26:46
为前面给出的解决方案添加示例。通过使用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
发布于 2012-05-23 21:13:34
安装Socket.IO-client后:
npm install socket.io-client
客户端代码如下所示:
var io = require('socket.io-client'),
socket = io.connect('http://localhost', {
port: 1337,
reconnect: true
});
socket.on('connect', function () { console.log("socket connected"); });
socket.emit('private message', { user: 'me', msg: 'whazzzup?' });
谢谢,alessioalex。
https://stackoverflow.com/questions/10703513
复制相似问题