安装
socket.io/socket.io-client
基本用法
首先koa和socket.io代码片段
const server = require('http').
const server = require('http').Server(app.callback())
const io = require('socket.io')(server) io.on('connection', socket => { console.log('连接成功!') }) server.listen(8080, () => console.log('http:localhost:8080'))
然后react和socket.io-client代码片段,因为我们是跨域
componentDidMount() { io('ws://localhost:8080') }
至此连接成功
具体用法
客户端向服务器发送请求
socket.emit('sendmsg', {text})
服务器监听客服端请求,然后把数据返回给客户端
io.on('connection', socket => { socket.on('sendmsg', data => { io.emit('recvmsg', data) }) })
客户端监听'recvmsg'获取数据
socket.on('recvmsg', data=>{ this.setState({ msg:[...this.state.msg, data.text] }) })