位置: 编程技术 - 正文

基于Node.js的WebSocket通信实现(基于node.js的跳蚤市场网站主要内容)

编辑:rootadmin

推荐整理分享基于Node.js的WebSocket通信实现(基于node.js的跳蚤市场网站主要内容),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node.js web,基于node.js的图书管理,基于node.js的音乐播放器小程序,基于node.js的软件开发,基于node.js的软件开发,基于node.js的wod应用开发,基于node.js的跳蚤市场网站主要内容,基于node.js的wod应用开发,内容如对您有帮助,希望把文章链接给更多的朋友!

node的依赖包

node中实现Websocket的依赖包有很多,websocket、ws均可,本文选取ws来实现,首先安装依赖

聊天室实例

假如A,B,C,D用户均通过客户端连接到Websocket服务,其中每个人发的消息都需要将其通过Websocket转发给其他人,此场景类似于服务端将A的消息广播给组内其他用户。

服务端实现

基于Node.js的WebSocket通信实现(基于node.js的跳蚤市场网站主要内容)

首先来看服务端程序,具体的工作流程分以下几步:

创建一个WebSocketServer的服务,同时监听端口的连接请求。 每当有新的客户端连接该WebSocket成功时,便将该连接push到连接池的数组中。 监听message事件,当该事件发生时,遍历连接池,以连接为单位将该消息转发到对应的客户端 监听close事件,当该事件发生时,将该连接移出连接池

服务端代码

客户端实现

如何发现用户?

通过上述的demo可以看到,WebSocket都是基于连接的,也就是说我们知道data是从那个connection发过来,但并不知道使用客户端的是李雷或者韩梅梅,这可如何是好?再想另一种场景,李雷只想给韩梅梅发消息,不想将消息广播给其他客户端,此时我们就需要在Server端能够标识用户身份和连接的对应关系。

于是,需要在客户端连接到WebSocket之后,紧接着再发一次请求,告诉Server我的user_id是多少,Server将此user_id与connection之间的关系存储在hashmap中,至此就建立了user_id与connection的对应关系。当需要发送消息给对应的客户端,从此hashmap中取出对应用户的connection信息,调用其send方法发出消息即可。

依赖包

服务端实现

标签: 基于node.js的跳蚤市场网站主要内容

本文链接地址:https://www.jiuchutong.com/biancheng/377870.html 转载请保留说明!

上一篇:Node.js如何响应Ajax的POST请求并且保存为JSON文件详解(node.js alert)

下一篇:利用Node.js对文件进行重命名(nodejs如何使用)

  • 发生了原材料运进和成品运出,但并未发生所有权
  • 电子承兑凭证
  • 新个税系统如何操作
  • 盈利幼儿园和非盈利幼儿园的政策
  • 政府补贴在企业怎么申请
  • 小规模纳税人申报时间
  • 支付的检测费计入什么科目
  • 以现金形式收到包装物押金
  • 行政单位其他收入包括哪些
  • 有哪些扣除项目可以抵扣
  • 不可修复废品损失会计分录
  • 存货暂估入账会引起存货账面价值发生增减变动吗
  • 去年税收滞纳金是个人缴的,用做账嘛
  • 货物丢失计入什么费用
  • 佣金可以直接转到个人账户吗
  • 营改增后不动产出租适用税率
  • 税金是否可以不计提呢?
  • 分工分类法
  • 企业白条报销和采取措施
  • 百旺发票修复怎么弄
  • 计提固定资产减值准备会计科目
  • 财产行为税税种
  • xp系统为什么电脑不能用
  • 电脑进步了系统
  • php浮点数转为字符串
  • 工程结算转主营业务收入
  • 购销合同违约罚款属什么科目
  • 前端如何用canvas绘制座位图
  • 待机最长的手机智能排行榜 2020
  • 报错专业了可不可以改
  • 企业类型变更是什么意思
  • 增值税发票开错了可以退吗
  • 劳务报酬个税计算器2021计算器
  • 房产税和土地使用税什么时候申报
  • php实现文件上传需要使用哪个全局变量
  • web前端面试题最新
  • 新个税讲解
  • codeigniter 教程
  • python如何编写函数
  • 长期股权投资的账务处理
  • 租金算营业成本还是管理费用
  • 客户的赔偿金会计分录
  • Vite + Vue2 + Vuetify2 + <script setup> + TypeScript 搭配开发项目
  • wordpress防盗链
  • 固定资产报废的请示
  • 计提和支付可以录在一张凭证吗
  • 政府奖励收入要交所得税吗
  • mysql sql性能调优的方法
  • mysql异常退出
  • 印花税会计处理办法
  • 保险补偿多久到账
  • 公司固定电话费用挂哪个科目
  • 加工费的进项发票摘要写什么
  • 公司股东投资是什么意思
  • 佣金怎样算
  • 固定资产原值减少后如何计提折旧
  • 公司注销固定资产必须清理吗
  • 为什么持有库存
  • 管理费用算产品成本吗
  • 进口医疗器械产品
  • mysql存储过程视频教程
  • MySQL使用select语句查询指定表中指定列(字段)的数据
  • wp程序
  • windows7与xp共享文件夹
  • mission controller
  • mmc.exe是什么进程
  • win7系统桌面图标有遮挡
  • Windows RT 8.1 Update 3九月发布 届时将加入改进版锁屏
  • win7纯净版系统安装教程
  • win8怎么设置自启动
  • cocos2dx 4.0
  • js中的filter方法
  • 使用vue开发手机app
  • 抽奖小程序模板
  • mac安装nodejs的权限问题
  • pythonglobal用法
  • python中的迭代器
  • 出租房地面铺什么
  • 个人所得税法全文完整版2021实施细则
  • 房地产对外投资契税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设