第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Socket.io join() 什么都不做

Socket.io join() 什么都不做

嚕嚕噠 2023-07-20 10:24:32
我在 socket.io 中加入房間時似乎遇到問題。socket.join() 似乎什么也沒做。這是我的服務器端代碼io.on('connection', function (socket) {console.log('connected');socket.on('joinRoom', function (data) {    console.log("Joining room")    socket.join("room1",function(){        console.log("Joined room")    })    socket.to('room1').emit('roomJoined', 'SERVER',' has connected to this room');});socket.on('acknowledge', function (data) {    console.log(socket.room)});socket.on('disconnect', () => {   console.log("disconnected")  });});我可以確認“joinRoom”事件已被觸發(fā),因為我可以在控制臺中看到“加入房間”,但未打印“加入房間”。此外,在客戶端,“roomJoined”事件不會被觸發(fā)。如果我改變socket.to('room1').emit('roomJoined', 'SERVER',' has connected to this room'); 到socket.emit('roomJoined', 'SERVER',' has connected to this room');然后客戶端觸發(fā) roomJoined 事件,證明套接字沒有加入房間。提前致謝
查看完整描述

2 回答

?
jeck貓

TA貢獻1909條經(jīng)驗 獲得超7個贊

既然您已經(jīng)找到了工作解決方案,我將解釋原因......

正如評論中所述,在 Socket.IO 3.0 中,該socket.join方法是同步的,并且不接受回調。至于為什么您的客戶端沒有收到“joinedRoom”事件......

好吧,在 Socket.IO 的所有版本中,socket.to并且socket.in不會向您正在調用的套接字發(fā)送任何內容socket.tosocket.in)。


查看完整回答
反對 回復 2023-07-20
?
瀟湘沐

TA貢獻1816條經(jīng)驗 獲得超6個贊

Nvm 我發(fā)現(xiàn)使用 socket.to() 而不是 io.to() 的錯誤。改變

socket.to('room1').emit('roomJoined', 'SERVER',' has connected to this room');

io.to('room1').emit('roomJoined', 'SERVER',' has connected to this room');

為我工作。


查看完整回答
反對 回復 2023-07-20
  • 2 回答
  • 0 關注
  • 186 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號