2016-10-01 84 views
0

我在服务器JS文件的快速代码:如何使用Express与Socket.io?

app.post('/confirm', function (req, res) { 
    // Here I need to send socket with emit() 
}); 

下文提到的代码,我有Socket.io:

io.on('connection', function (client) { 
    // All methods 
}); 

问题是,我不能让快递方法app.post()访问socket和无法通过POST操作发送数据。

我该如何使用它?

+1

您应该让它们分开,因为socket.io使用ws&wss协议,而快捷方式使用http&htpps –

+0

https://www.youtube.com/watch?v=6bXpq1xiDsQ –

回答

0

可以使用以下发射数据到特定连接插口:

io.to(socket_id).emit('something', {"bar":"foo"}); 

的“socket_id”变量,因为可能猜到,从所连接的插座的socket.id。

您可能必须将它们与其他标识一起存储在数组或对象中,以便稍后使用快速路由将数据发送到正确的客户端。

PS:由于你的代码是

io.on('connection', function (client) { 
    // All methods 
}); 

你会用client.id得到套接字ID。