
用node实现socketIO实时通信
发布日期:2021-05-14 16:32:48
浏览次数:20
分类:精选文章
本文共 1406 字,大约阅读时间需要 4 分钟。
一般来说只有前端才能向后端请求,请求完成后端再做出响应反馈给前端。而socket.io机制就解决了后端可以主动向前端发出请求,通过该原理即可实现聊天室的功能。
第三方包的安装
首先应该安装socketio的第三方包,
客户端安装:npm i socket.io-client
服务端安装: npm i socket.io
分别引入socket.io
客户端:import io from 'socket.io-client'
require('socket.io')
服务端代码文件socketIO_server.js
module.exports = function (server) { const io = require('socket.io')(server)console.log('okok'); // 监视客户端与服务器的连接 io.on('connection', function (socket) { console.log('有一个客户端连接上了服务器') // console.log('okok'); // 绑定监听, 接收客户端发送的消息 socket.on('sendMsg', function (data) { console.log('服务器接收到客户端发送的消息', data) // 处理数据 data.name = data.name.toUpperCase() // 服务器向客户端发送消息 // socket.emit('receiveMsg', data) io.emit('receiveMsg', data) console.log('服务器向客户端发送消息', data) }) })}```
客户端代码文件socketio_test.js
// 引入客户端IOimport io from 'socket.io-client'// 连接服务器,得到代表连接的socket对象const socket = io('ws://localhost:3000')// 绑定'receiveMessage'的监听, 来接收服务器发送的消息 socket.on('receiveMsg', function (data) { console.log('浏览器端接收到消息:', data)})// 向服务器发送消息socket.emit('sendMsg', { name: 'Tom', date: Date.now() }) console.log('浏览器向服务器发送消息:',{ name: 'Tom', date: Date.now() });
在客户端入口文件中引入 客户端配置的 socketio文件
import './test/socketio_test'
在服务端入口文件中引入 服务端配置的 socketio文件
var http = require('http'); var server = http.createServer(app); require('../socketIO/socketIO_server')(server)
效果显示:
控制台打印:

浏览器端打印:

发表评论
最新留言
感谢大佬
[***.8.128.20]2025年04月24日 16时53分15秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
PyQt5快速上手基础篇10-QSettings用法
2019-03-12
JQuery--手风琴,留言板
2019-03-12
vue--搜索,添加,删除小案例
2019-03-12
VUE框架应用包---------微信二维码应用
2019-03-12
(KOA2 step1)利用koa-generator创建KOA2项目
2019-03-12
MFC 自定义消息发送字符串
2019-03-12
goahead 下goaction测试与搭建
2019-03-12
Adding Powers
2019-03-12
不能将 "const char *" 类型的值分配到 "char *" 类型的实体
2019-03-12
PyTorch学习笔记——(6)数据加载Dataset和DataLoader的使用
2019-03-12
ideal 下创建springboot项目
2019-03-12
Linux操作系统的安装与使用
2019-03-12
ajax请求出现/[object%20Object]错误的解决办法
2019-03-12
01背包(小偷的概率)
2019-03-12
流体运动估计光流算法研究
2019-03-12
如何转载博客
2019-03-12
第三方库jieba的安装方法
2019-03-12
在PyCharm切换Python2和Python3
2019-03-12
Burpsuite工具的证书安装
2019-03-12
PTA【C语言】求整数段和
2019-03-12