2017-04-07 52 views
0

我有一個聊天應用程序,我必須處理在線用戶。 我怎麼能在發送用戶名:在套接字io連接中設置用戶名

var myIoSocket = io.connect(); 

這樣我就可以使在後端的列表。

目前我正在這樣做。

Socket.on("connect",function(){ 
      Notification.primary('Connected'); 
      Socket.emit('iamonline',{ 
       username: $rootScope.username 
      }); 
     }); 

後端:

​​

回答

1

我有同樣的問題對不同的項目,發現與查詢做到這一點,並在握手獲得價值的最佳途徑。

server.js

io.on('connection' , function(socket){ 
    if(typeof socket.handshake.name!="undefined"){ 
    user = { 
     name : socket.handshake.query.name, 
     id : socket.handshake.query.id, 
     email : socket.handshake.query.email, 
    } 
    } 
}); 

在客戶端,

if(typeof io != "undefined"){ 
    var visitor = io.connect('ws://127.0.0.1:8000' , { 
     'query': $.param({token: '<?=Session::$instance->session['id']?>'}) + '&name=<?=Session::get("username")?>&id=<?=Session::get("ID")?>&email=<?=Sesion::get("Email")?>' 
    }); 
} 
+0

很多你救了我的一天感謝。 –