织梦CMS - 轻松建站从此开始!

沙龙国际_沙龙国际亚洲第一品牌网上娱乐

当前位置: 主页 > 沙龙国际娱乐网址 >

socket.io 分房间发送消息失败

时间:2017-08-13 07:39来源:未知 作者:admin 点击:
我想使用socket.io的分房间的功能,大致思路是刚进入页面就进入一个指定房间(由url决定的),然后后面的消息操作都是在这个房间下进行的,但是虽然进入房间能成功,但是发送消息时

我想使用socket.io的分房间的功能,大致思路是刚进入页面就进入一个指定房间(由url决定的),然后后面的消息操作都是在这个房间下进行的,但是虽然进入房间能成功,但是发送消息时服务端接收到了,回发的信息客户端接收不到,求解,实现代码如下

服务端

io.on('connection', function(socket){
  socket.on('join', function(data){
    socket.id = data.accountid;
    socket.join(data.teamid);
    socket.emit('joined', data);
  });
  //接收前端发送过来的消息
  socket.on('sendMsg', function(data){
    if(data.to == 'all'){
      console.log(data);
      console.log(data.teamid   " received a message to all."); //测试有输出
      io.sockets.in(data.teamid).emit('replyMsg', data);
      console.log("success"); //测试时这里有输出
    }else{

    }
  });
});

客户端

var socket = io.connect();
    var currentteam = $(".teamBtn").data('teamid'),
        currentaccount = $(".nickname").data('accountid'),
        currentaccountNickname = $(".nickname").text();
    socket.emit('join', {
        teamid: currentteam,
        accountid: currentaccount
    });

    socket.on('joined', function(data){
        console.log(data.accountid   "joined room"   data.teamid   "succeed."); //测试时有输出
    });

    var $input = $("#inputContent");
    $input.keydown(function(e){
        if(e.shiftKey){
            if(e.keyCode == 13){
                socket.emit('sendMsg', {
                    accountid: currentaccount,
                    accountname: currentaccountNickname,
                    teamid: currentteam,
                    to: 'all',
                    msg: $input.val()
                });
                console.log($input.val()   "  sended.");
            }else{
                return ;
            }
        }else{
            return ;
        }
    });

    socket.on('replyMsg', function(data){
        console.log(data);
        alert(data);
    });
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容