位置: 编程技术 - 正文

基于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如何使用)

  • 成本利润率和销售利润率哪个大
  • 个税扣除方法叫什么
  • 外币报表折算差额是一种未实现的汇兑损益
  • 注册资本没有实缴需要交印花税吗
  • 一个人可以两家以上公司发放工资么
  • 土地转让的税费怎么算
  • 计提和缴纳企业所得税分录
  • 以前年度记错的费用怎么调整?
  • 公司注销时应付职工薪酬怎么处理
  • 公户没有进账,可以开发票吗?
  • 叉车在固定资产里叫什么
  • 事业单位只能开具0税率的普票
  • 个人装卸费如何开票
  • 关于330技术维护费
  • 发票丢失罚款标准要看金额吗
  • 城建税一定要当月缴纳吗
  • 购车发票怎么做分录
  • 非流动负债怎么巧记
  • 购买固定资产如何记账
  • 法人变更股权不转让有什么影响么么
  • 微软输入法打不出汉字只有拼音
  • 无发票的费用怎么处理
  • 企业对外捐赠设备会计分录
  • 结转完工产品成本的公式
  • win10 kb5005611
  • 领用原材料业务
  • 园林绿化工程公司电话
  • 排污费计入应交税费吗
  • 公益性捐赠增值税税率
  • dae是什么文件
  • 注册资本增加了
  • 导航菜单是什么
  • 卷曲的蕨菜叶怎么吃
  • 税控盘每年的服务费可以抵扣吗
  • 什么是应交税费未交增值税
  • php面向对象的理解
  • html流光按钮
  • yolov5 test.py
  • javascript猜数字游戏+表单
  • 其他综合收益转入盈余公积和未分配利润
  • 帝国cms是基于什么的
  • 买商品赠送赠品怎么做账
  • 行政事业单位个税代扣怎么记账
  • 电子票开票人复核人一样有影响吗
  • 设备安装工程验收规范
  • 电子承兑汇票贴现怎么操作
  • 什么是承兑汇票套现
  • 数据库双亲结点
  • 专项附加可以叠加吗
  • 接受捐赠的增值税计入会计利润吗
  • 固定资产折旧指标有哪些
  • 一次性医疗补助金怎么计算
  • 固定资产收购方案案例
  • 政府给的专款专用的补助,怎么入账
  • 发票具有哪些情况可以开
  • 库存商品的成本
  • 开了发票就要交税吗?
  • 进项税转出补缴增值税 城建税及两费
  • 管理费用和销售费用都有职工薪酬
  • 出口货物没有进项发票用什么平台申报
  • 深入分析换一种说法
  • centos7配置tomcat
  • 使用linux常用命令
  • windows的安装
  • office解压后如何安装
  • win7系统360浏览器收藏夹位置
  • 基于linux的mplayer音乐播放器
  • linux网络中断
  • javascript的代码写在哪里
  • js创建类对象的方法
  • 从头开始绘制一幅画图片
  • android开发中遇到的问题
  • android 显示图片
  • javascript页面
  • 四川增值税发票真伪查询
  • 内蒙古国税局官网
  • 怎样加入广东省民间文艺家协会
  • 出成效的意思
  • 内蒙古国税网上办税厅
  • 四川税控
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设