发送和获取数据(确认)

有时,您可能希望在客户端确认消息接收时收到回调。

为此,只需将函数作为.send.emit的最后一个参数传递。 更重要的是,当你使用.emit时,确认是由你完成的,这意味着你也可以传递数据:

Server(app.js)

  1. const io= require('socket.io')(80)
  2. io.on('connection',socket=>{
  3. socket.on('ferret',(name,word,fn)=>{
  4. fn(name+'says'+word)
  5. })
  6. })

client(index.html)

  1. <script>
  2. const socket= io()
  3. socket.on('connect',()=>{
  4. socket.emit('ferrect','tobi','woot',(data)=>{
  5. console.log(data)//应该是 'tobi says woot'
  6. })
  7. })
  8. </script>