位置: 编程技术 - 正文

玩转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命令是什么意思)

  • 核定征收的一般纳税人开专票怎么入账
  • 个人卖给公司车需要什么手续
  • 财务报表上期金额怎么填写
  • 领增值税专票需要发票吗
  • 增值税发票9个点和13个点区别
  • 蓝字发票有认证的吗
  • 福利费的支出要求及标准
  • 企业提供建筑服务,应向建筑服务发生地
  • 购入资产的入账价格一般是以该项资产的什么反应
  • 子公司给母公司开票
  • 研发物资
  • 消费税征收范围包括
  • 建筑企业在实施安全检查时,必须严格执行
  • 如何计算房地产容积率与土地面积
  • 社保滞纳金税前怎么算
  • 为他人提供纳税担保, 你的责任都清楚了吗?
  • 建筑材料营改增之前怎么开发票
  • 增值税税率为6%的是什么服务
  • 企业收到银行利息收入2000元会计分录
  • 车辆保险抵扣会计分录
  • 长期待摊费用与折旧区别
  • 小规模申报个税手续费返还在哪填写信息
  • 装了win8以后不能上网
  • 缴纳社保费现金流量?
  • hpp是什么文件
  • 订金账务处理
  • 房屋修理费用
  • win11dev预览版可以升级正式版吗
  • 伊兰简介
  • 纳税调整项目明细表30行怎么填写
  • 库存商品的分类有哪些
  • pico实例
  • git主干
  • phpcms v9 getshell
  • 集团公司内部结算
  • 淘宝运费险费用很高
  • 社保缴费基数是怎么确定的
  • 应收及预付款项的思维导图
  • 差旅费必须填写差旅费报销单吗
  • 发票可以开未来日期吗
  • Linux下实现MySQL数据备份和恢复的命令使用全攻略
  • 预付账款和挂账的区别
  • 事业单位财政拨款收入会计分录
  • 出口货物弃货
  • 职工薪酬包括哪些应如何计算
  • 企业购买商场的资本金要求是多少
  • 流动资产周转率和总资产周转率
  • 支付临时工的工资计入应付职工薪酬吗
  • 营业外支出包括
  • 什么是中型企业
  • 异地缴纳增值税和附加税的区别
  • 企业对财会人员的要求
  • ccs 运行
  • xp文件夹选项在哪里打开
  • 远程登陆服务器命令
  • macbookzen
  • centos下载命令
  • Window7+CentOS 6.5双系统安装图文方法
  • linux安装过程中的硬盘分区
  • windows取消隐藏文件夹
  • 如何在mac中安装五笔字型输入法
  • windos8怎么样
  • 升级win10之后东西不见了
  • WIN10更新失败
  • win10系统误删文件怎么恢复
  • js中sort排序
  • js添加列表项
  • 一个简单的灵魂福楼拜
  • js处理跨域方式及原理
  • shell编程简单实例
  • unity怎么设置多个关卡
  • php实现登录功能
  • Unity for Absolute Beginners(一)
  • javascript常用类型
  • 简述javascript
  • 税务安装步骤
  • 医疗发票真伪查询
  • 营业税纳税申报时间
  • 转租土地合法吗现在
  • 什么发票可以抵税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设