码迷,mamicode.com
首页 > 其他好文 > 详细

socket.io

时间:2019-11-04 21:35:54      阅读:108      评论:0      收藏:0      [点我收藏+]

标签:The   div   就是   imp   server   cli   接受   function   color   

Socket.io

服务端(结合Express/Koa):

// Server
import express from ‘express‘
import http from ‘http‘
import socketio from ‘socket.io‘
const app = express()
const server = http.createServer(app)
const io = socketio(server)
server.listen(3000)
io.on(‘connection‘, (socket)=>{
  socket.emit(‘news‘, { hello: ‘world‘ })
  socket.on(‘my other event‘, function (data) {
    console.log(data)
  })
})

客户端:

// Client
<script src="http://localhost:3000/socket.io/socket.io.js"></script>
<script>
  const socket = io.connect(‘http://localhost:3000‘)
  socket.on(‘news‘, (data)=>{
    socket.emit(‘my other event‘, { my: ‘data‘ })
  })
</script>

socket.io最核心的两个api就是emit 和 on了 ,服务端和客户端都有这两个api。通过 emit 和 on可以实现服务器与客户端之间的双向通信。
emit :发射一个事件,第一个参数为事件名,第二个参数为要发送的数据,第三个参数为回调函数(如需对方接受到信息后立即得到确认时,则需要用到回调函数)。
on :监听一个 emit 发射的事件,第一个参数为要监听的事件名,第二个参数为回调函数,用来接收对方发来的数据,该函数的第一个参数为接收的数据。

服务端常用API:
socket.emit():向建立该连接的客户端发送消息
socket.on():监听客户端发送信息
io.to(socketid).emit():向指定客户端发送消息
io.sockets.socket(socketid).emit():向指定客户端发送消息,新版本用io.sockets.socket[socketid].emit()
socket.broadcast.emit():向除去建立该连接的客户端的所有客户端广播
io.sockets.emit():向所有客户端广播

客户端常用API:
socket.emit():向服务端发送消息
socket.on():监听服务端发来的信息

socket.io

标签:The   div   就是   imp   server   cli   接受   function   color   

原文地址:https://www.cnblogs.com/mzjwx/p/11794815.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!