我有一个服务Socket.io的express node.js服务器。我希望能够向快速服务器发出获取请求,该请求将自动向消息发送消息。
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服务器发送快速消息,并将消息推送给每个适当的用户。)
答案 0 :(得分:1)
io.sockets.in(req.params.channel).emit("channel message", {mes:req.params.message})
这将向所请求频道中的所有用户发送消息。
答案 1 :(得分:0)
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'
的套接字