位置: 编程技术 - 正文

Node.js利用Net模块实现多人命令行聊天室的方法(node.js net模块)

编辑:rootadmin

推荐整理分享Node.js利用Net模块实现多人命令行聊天室的方法(node.js net模块),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node js net,nodejs怎么使用,node.js net模块,node.js怎么用,nodejs oom,node.js net模块,node.js net模块,node.js net模块,内容如对您有帮助,希望把文章链接给更多的朋友!

这篇文章介绍的是Node.js利用Net模块实现命令行式的多人聊天室,下面话不多说,来看看详细的介绍吧。

1、net模块基本API

要使用Node.js的net模块实现一个命令行聊天室,就必须先了解NET模块的API使用。NET模块API分为两大类:

Server和Socket类、工厂方法。

Server类如下图所示:

net.Server类可以用来创建一个TCP或本地服务器,继承了EventEmitter。

Socket类如下:

net.Socket类一般用创建一个socket客户端或者是net.Server connection事件的参数。

工厂方法如下:

Node.js利用Net模块实现多人命令行聊天室的方法(node.js net模块)

以上三个图展示了API的使用,其实NET模块的内部原理和C++网络编程差不多的,都是以下步骤。

服务端:

创建socket套接字 绑定IP和端口 启动监听 等待客户端连接 与客户端进行通信 关闭socket

客户端:

创建socket套接字 连接server服务器 与服务器进行通信 关闭socket

如下图所示:

2、聊天室的设计和实现

上面学习了NET模块API的使用,接下来便开始实现命令行聊天室,我们不需要做的很复杂,只需实现如下功能即可:

用户自定义昵称,不可更改 当有新的用户进入聊天室,或者用户离开聊天室,广播给其他用户 用户发送信息,需广播给其他用户 客户端与服务端建立心跳机制 用户输入'exit'或者'quit'可以退出聊天室

确定功能之后,便开始代码的编写。这里我就不一步步分析,直接上代码了,首先是服务端:

Server:

客户端代码如下:

client:

执行结果如下如下:

到此,一个命令行聊天室便做完了。

总结

标签: node.js net模块

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

上一篇:详解Nodejs的timers模块(nodejs middleware)

下一篇:详解nodejs 文本操作模块-fs模块(五)(nodejs 文档)

  • 个人所得税退还是不退好
  • 增值税发票综合服务平台红字确认
  • 生产成本结转主营业务成本本币公式怎么弄
  • 成品油认证步骤
  • 个人所得税纳税比例
  • 会计核算差错
  • 逾期认证未抵扣的文件
  • 非居民企业所得税
  • 建筑施工企业的分公司区域公司等较大的
  • 增值税专用发票的税率是多少啊
  • 发票最大限额999元,超过了怎么办
  • 企业如何增加净资产
  • 房屋维修开的发票有哪些
  • 土地开发中三通一平
  • 购买活动赠品会计分录
  • 跨年得退货还用开负数发票吗?
  • 员工给公司代垫的款项分录
  • 怎么设置静音iphone
  • 电脑蓝屏代码0x0000003B
  • 股息红利税补缴什么时候收取
  • 反避税的意义
  • 预收账款预提费用是什么
  • 公司外币账户怎么登录
  • 收到折扣发票怎么处理
  • mac切换不了中文怎么回事
  • win10应用图标怎么调出来
  • win10投影无反应
  • linux安装tk
  • 发票明细与实际送货清单不符
  • win10版本2004和20h2
  • 合伙企业股东个人所得税费用扣除标准
  • php随机函数是什么
  • 置换土地如何做账务处理
  • php从服务器下载文件
  • 个人签订借款合同
  • 业务招待费超出部分纳税调增分录
  • 资产负债表中投资总额是什么
  • 蜈蚣什么情况下出现
  • 土地出让金返还的税务处理
  • faster rcnn详解
  • vim操作命令
  • 支付中介费和物业费比例
  • phpcms v9 getshell
  • 财政零余额账户是什么
  • 进项加计抵减会计分录怎么做
  • 货物运输业增值税
  • 填写记账凭证的日期一般是会计人员填制记账凭证的
  • 浅谈一下新冠的好处
  • mysql日期和时间分开存的 索引
  • 已付预付款当月怎么入账
  • 监理公司成本核算方法
  • 消费税计税分录
  • 多计提的个人所得税退给员工怎么处理
  • 买车险怎么打折
  • 股权转让是否需要全体股东签字
  • 业务招待费扣除标准2023
  • 汇算清缴补交所得税的分录
  • 代扣和代缴的区别
  • 退货属于什么物流
  • 事业单位的服务期
  • 酒店购买的餐具可以退吗
  • 使用mysql进行模糊查询
  • window8开机
  • win7的系统在哪里打开
  • ubuntu桌面右键
  • freebsd使用wifi
  • Win7 64位系统声卡重装过程中出现失败的解决方法
  • win8旗舰版官方下载
  • win edge
  • qbupdate.exe - qbupdate是什么进程 有什么作用
  • reminder.exe - reminder是什么进程 有什么用
  • Win10打开淘宝https被划上红色斜杠的快速解决办法
  • jquery地址
  • shell中的循环语句有哪些
  • DataTables+BootStrap组合使用Ajax来获取数据并且动态加载dom的方法(排序,过滤,分页等)
  • unity3D关于公共安全内容制作
  • APP中javascript+css3实现下拉刷新效果
  • jquery操作表单
  • 非房地产企业土地增值税清算
  • 吉林省地税局电话号码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设