的套接字
我有一个express node.js服务器服务Socket.io。我希望能够使get请求的快车服务器,将自动发送消息到一个通道的能力。
var app = require('express').createServer()
, io = require('socket.io').listen(app)
app.listen(80);
app.get('/:channel/:message', function (req, res) {
//Code to create socket
socket.emit("sent from get", {channel:req.params.channel, message:req.params.message})
});
io.sockets.on('connection', function (socket) {
socket.on('sent from get', function (data) {
socket.broadcast.to(data.channel).emit('channel message', { message: data.message});
});
});
如何在app.get
块中创建(和销毁)套接字连接?
(为了清晰起见,我想使用它在保存特定对象时从rails服务器发送一条快速消息,并将消息推送给每个适当的用户。)
io.sockets.in(req.params.channel).emit("channel message", {mes:req.params.message})
将向请求通道中的所有用户发送消息。
var chat = io.of('/chat').on('connection', function (socket) {
socket.emit('a message', { that: 'only', '/chat': 'will get' });
chat.emit('a message', { everyone: 'in', '/chat': 'will get' }); });
下面的例子定义了一个监听'/chat'