位置: 编程技术 - 正文

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

  • 一般纳税人内账税金的处理
  • 可供出售金融资产和长期股权投资
  • 一般纳税人增值税优惠政策2023
  • 向投资者支付的股息红利等权益性投资收益款项
  • 售后维修的配件开维修费
  • 出口专用发票应在哪里开
  • 增值税如何减税
  • 固定资产减值必有损益吗
  • 增值税留抵退税政策2022
  • 共同控制合营企业的合营者
  • 进项税有余额但没有余额
  • 房地产企业销售现房是否预缴增值税
  • 进项票异常如何自查
  • 房产税免收范围包括
  • 国税发200931号文解读
  • 转让无形资产所有权计入什么科目
  • 增值税普通发票可以抵扣吗
  • 弥补以前年度亏损从哪里取数
  • 海关新增成交方式exw条款,如何退税?
  • 个人所得税纳税比例
  • 什么是往来科目
  • 长期股权投资是什么科目
  • 税务更正申报需要哪些资料
  • 公司购买床垫怎样入账
  • 离职有补偿金的可不可以领取失业金
  • 资金池利息收入计入投资收益吗
  • 内账增值税会计核算
  • 个体户税务申报需要什么资料和手续
  • PHP:stream_context_set_option()的用法_Stream函数
  • 收境外汇款时怎么操作
  • 企业受赠业务的法律规定
  • 股权投资取得的收入计入什么科目
  • 小企业会计制度最新版
  • 红字发票账务处理需冲回成本吗?
  • 结构体基本知识
  • 生产型企业出口退税会计分录
  • 活动委托书范本
  • 股本和库存股有什么区别
  • 房地产公司计提税金
  • 财务软件怎么做红冲分录
  • 零申报失败什么原因
  • 固定资产入账原值含税价吗
  • 增值税发票抵扣期限是多久
  • 企业所得税的成本怎么填?
  • 一年的房租费摊销的账务处理
  • 会计电算化的内容和任务
  • 外地预缴怎么算
  • 电商账务怎么做
  • 库存现金盘点表模板
  • 支付给个人的佣金如何代扣个税
  • 不动产计提折旧时间
  • 公司买的车如何入账举例说明
  • 电话费可以自动扣银行钱吗
  • 个人开具的收据能税前扣除吗
  • 进项发票超过期限不认证怎么办
  • 当前旅游业
  • 旅游饮食服务企业的特点包括
  • mysql性能比较
  • mysql配置文件优化详解
  • 电脑更新win10系统软件
  • windows预览版计划
  • centos 中文
  • vmware虚拟机安装Linux教程
  • windows10预装
  • win8.1 蓝屏
  • windows账户升级为管理员
  • win7可以免费升win10
  • linux svn命令使用详解
  • powershow是什么意思
  • linux的移植
  • QOpenGLWindow 、QOpenGLWidget 和 QPainter混合渲染方法初探
  • js制作倒计时
  • android 图片视频轮播框架
  • javascript !
  • 安卓监听功能
  • 河南普通发票查询真伪查询系统
  • 拆迁户契税减免政策有时间限制
  • 餐饮票抵扣成本怎么算
  • 江苏省国家税务局总局官网
  • 保税区社会车辆能进吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设