socket.io不為人知的功能


socket.io 是一個基於websocket實現的前后端實時通訊框架,也對低版本瀏覽器做了封裝。使用起來簡單,方便。

初次使用起來可能會比較迷糊,其實主要常用就幾個方法,簡單介紹一下。

 

//客戶端

io.connect(url) //客戶端連接上服務器端
socket.on('eventName', msg => {}) //客戶端監聽服務器端事件
socket.emit('eventName', msg) //客戶端向服務器端發送數據
socket.disconnect() //客戶端斷開鏈接
//服務端

socket.on('eventName', msg => {}) //服務器端監聽客戶端emit的事件,事件名稱可以和客戶端是重復的,但是並沒有任何關聯。socket.io內置了一些事件比如connection,disconnect,exit事件,業務中錯誤處理需要用到。
socket.emit('eventName', msg) //服務端各自的socket向各自的客戶端發送數據
socket.broadcast('eventName', msg) //服務端向其他客戶端發送消息,不包括自己的客戶端
socket.join(channel) //創建一個頻道(非常有用,尤其做分頻道的時候,比如斗地主這種實時棋牌游戲)
io.sockets.in(channel) //加入一個頻道
socket.broadcast.to(channel).emit('eventName', msg) //向一個頻道發送消息,不包括自己
 
io.sockets.adapter.rooms //獲取所有的頻道

  

歡迎借鑒~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM