如何使用快速生成器socket.io?单个插座,用于单独链接

时间:2017-03-14 01:21:58

标签: javascript node.js express socket.io

我有典型的快速发电机应用程序。在我的控制器文件夹中,我有代码:

        router.get('/:id([A-Za-z0-9_]{5,25})', function(req, res, next) {
            res.render('my-page.html', { title: 'Messages'});
             //How to implement socket.io code for this page?
            /*
             io.on('connection', function(socket){
                 console.log('a user connected');
             });
           */
        });

我尝试了socket.io网站和stackoverflow建议的简单指南,但它无法正常工作。 试着想象一下,这里有很多不同的聊天室,而且对于每个房间,我都需要打开个人插座...我知道如何使它全球化,但不知道如何制作个人插座,个人页面..

1 个答案:

答案 0 :(得分:1)

那是什么房间。

 socket.join(<ROOM_NAME>)

如果您想加入以您连接的网址命名的会议室,则可以使用socket.request.url。例如:

  io.sockets.on('connection', (socket) => 
  {
    const _req = socket.request
    console.log(_req.url) // do something with it
  }

修改

并且不要将socket.io逻辑放在REST路由中。制作一个全局连接逻辑,您可以(显然)模块化。