位置: 编程技术 - 正文

玩转NODE.JS(四)-搭建简单的聊天室的代码(node.js实战)

编辑:rootadmin

推荐整理分享玩转NODE.JS(四)-搭建简单的聊天室的代码(node.js实战),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nodejs教学视频,node. js教程,node教程,node-js,node.js视频教程,node. js教程,node.js入门教程,node. js教程,内容如对您有帮助,希望把文章链接给更多的朋友!

Nodejs好久没有跟进了,最近想用它搞一个聊天室,然后便偶遇了socket.io这个东东,说是可以用它来简单的实现实时双向的基于事件的通讯机制。我便看了一些个教程使用它来搭建一个超级简单的聊天室。

初始化项目

在电脑里新建一个文件夹,叫做“chatroom”,然后使用npm进行初始化:

然后根据提示以及相关信息一步一步输入,当然也可以一路回车下去,之后会在项目里生成一个package.json文件,里面的信息如下:

这个文件描述了项目的相关信息。

安装socket.io

接下来,安装socket.io:

安装Socket.IO的时候,--save参数用于保存模块依赖信息到package.json文件,安装完后,打开package.json文件会看到里面多了一项内容:

同时Socket.IO安装在了node_modules文件夹下。

实现聊天-服务器端

首先我们来编写服务器端程序,新建文件“index.js”,在里面导入如下模块:

第一行是导入http模块,先前我们已经见过了,用于创建http server。

玩转NODE.JS(四)-搭建简单的聊天室的代码(node.js实战)

第二行是导入socket.io模块,实现实时聊天必备的,不再赘述。

第三行是导入fs模块,用于读取文件。具体的一会你就会了解到。

通过http模块创建app,在刚刚的代码中加入如下语句:

fs.readFile()方法用于读取文件,在这里读取的是index.html文件,也就是一会即将要编写的前端聊天室的展示页面。

第8行是返回请求的状态码,第9行是返回读取到的内容给浏览器。然后这个http server使用listen方法监听端口。

接下来,就是使用socket.io来实现聊天的事件了。在刚刚的index.js文件的http server下面接着创建socket.io对象。

然后监听connection事件,当浏览器连接到此Socket.IO服务时触发该事件:

第4行用于将信息输入到后台的显示器,第5行用于将内容发送给客户端,为了知道服务器是否启动,我在后面又加了如下一句:

至此,服务器端编码完成。

实现聊天-客户端

首先实现界面部分,仅仅有显示消息记录以及消息发送框,代码如下:

然后需要在里面加上JS来实现与服务器端的通信,将服务器端获取的数据展示到客户端,主要代码如下:

此时,可以执行:

然后在浏览器打开localhost:查看效果。

至此,一个简陋的聊天室就实现了,有兴趣的朋友可以在此基础上进行扩展,实现功能更为复杂的聊天室。

项目源代码:源码下载

标签: node.js实战

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

上一篇:node+express制作爬虫教程(node做爬虫)

下一篇:NodeJS中的MongoDB快速入门详细教程(nodejs中的shell命令是什么意思)

  • 待抵扣进项税额转入进项税额
  • 赠与房屋再次出售的缴税问题有哪些
  • 个所税包括什么
  • 人力资源行业税务政策
  • 企业弥补以前年度亏损顺序
  • 计税依据的定义
  • 如何确定一个企业在网络营销中的目标受众?
  • 咨询公司所得税税负率是多少合适
  • 信息技术费如何做账
  • 410768金税盘
  • 利润表中的其他业务利润包括哪些
  • 非房地产企业销售不动产增值税计算
  • 原材料的可变现净值等于产品可变现净值减加工费么
  • 资产重组的税务筹划
  • 企业租入固定资产发生的改良支出计入什么科目
  • 企业所得税讲解
  • 17税点变更成16税点
  • 计提结转本月城建税怎么做账?
  • 哪些罚款不能进行所得税税前扣除?
  • 外贸出口退税是退出口金额的多少
  • 企业采购一般应包括什么
  • 子公司取得的投资收益
  • 房地产企业增值税税率是多少
  • 海运增值税率
  • 房产税从价计征的计税依据
  • 与工程有关的差旅费是否可以计入在建工程呢?
  • 食用盐的增值税是多少
  • 应收利息和应计利息有什么不同
  • 个人捐赠住房
  • 个贷系统平帐专户A贷
  • 高新技术企业改革
  • php 混淆
  • daio.dll 病毒
  • launcheflc.exe什么意思
  • 其他应收款超过一年是12个月吗?
  • 承担客户车辆维修责任
  • 小企业会计制度最新版
  • php floor
  • 个人所得税的现状分析
  • 【K210】K210学习笔记七——使用K210拍摄照片并在MaixHub上进行训练
  • php二分查找算法两种方法
  • 零申报的公司有财务报表吗
  • mongodb document
  • 农业种植会计
  • 金税盘技术维护费每年都减免么
  • 资产负债表的种类
  • 科技公司技术服务费税率
  • access不能打开数据库
  • 小规模增值税申报未开票收入怎么填
  • 承租人损坏租赁物
  • 缴纳印花税如何写分录
  • 企业与股东之间的交易是否会影响企业财务目标的实现
  • 用友有审核权限审核不了
  • 交通运输行业指什么
  • 律师的行业
  • 一般纳税人的进项税额可以抵扣吗
  • 应收票据贷方余额
  • sql server常规错误
  • sql server存储过程写法
  • linux软件安装源
  • win7如何彻底关闭135端口 dcom
  • 内存运行linux
  • win7 64位系统双击桌面所有程序提示"文件没有与之关联的程序来执行"的解决方法
  • fedora 图形界面
  • Linux的文件系统采用树形结构()
  • win10系统打开安装程序没反应
  • cocos2dx官方教程
  • opengl
  • jquery使用教程
  • 使用ssh登录远程服务器有两种方法
  • js中的隐式类型转换
  • angular.js
  • android资源文件
  • shell脚本 -ne 0
  • python入门100例
  • jQuery Easyui Datagrid实现单行的上移下移及保存移动的结果
  • 《简单》阅读答案
  • python网络编程从入门到精通
  • 河南省国家税务局通用定额发票
  • 园区地税局在哪里
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设