针对单个用户,主动发消息,怎么做到的?

范例如下:

  1. const app = express();
  2. const io = socket(app.listen(444, () => {
  3. console.info('socket io start:444');
  4. }));
  5. io.on('connection', _websocket);
  6. // 对数组第一个ids广播消息
  7. let chatIds=[]
  8. const chat = io.of('/chat').on('connection',(socket)=>{
  9. chatIds.push(socket.id)
  10. let id = chatIds[chatIds.length-1]
  11. setInterval(()=>{
  12. console.log(1,id)
  13. socket.broadcast.to(chatIds[0]).emit('hello', 'axxxx');
  14. },5000);
  15. });
  16. })

作业

以下是改进应用程序的想法:

  • 当有人连接或者断开连接时,向连接的用户广播消息
  • 添加对昵称的支持
  • 不要给用户发送相同的消息,而在它按下回车后直接附加消息
  • 添加“{用户}”正在输入的功能
  • 显示谁在线
  • 添加私人消息
  • 分享你的改进