位置: 编程技术 - 正文

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

  • 股权转让交印花
  • 企业销售不动产增值税税率
  • 地产企业预缴增值税政策
  • 税控盘网上申请解锁
  • 医疗垃圾处理费标准2020
  • 小规模纳税申报时间
  • 运输业务增值税
  • 投标公司资质借用计入什么会计科目?
  • 农产品收购发票开错了
  • 代发工资的手续费是多少
  • 的商品编码
  • 所得税不能税前扣除项目
  • 太阳能真空管和普通管的区别
  • 非居民企业怎么算企业所得税
  • 怎么获取win10密钥
  • scrtkfg.exe - scrtkfg是什么进程 有什么用
  • 息税前利润和税前净利润的关系
  • 支付本月职工薪酬
  • php提供了________和___________两种复合数据类型
  • 未取得合法有效凭证可以税前扣除
  • 增值税减免后按3%记提税款吗
  • 采用汇兑的方式归还前欠货款
  • 矿产资源补偿费与采矿权价款区别
  • php生成图片验证怎么弄
  • joomla安装教程
  • 企业支付宝要交税吗 要交多少钱
  • 人工智能讲解
  • vue中 router.beforeEach() 的用法
  • 租赁公司的
  • 损失函数是什么
  • javascript js
  • 大模型时代的自然语言处理
  • win10自带的重装能彻底清除上网记录和u盘记录吗
  • php面试知识点
  • 公司向股东个人借款的会计分录
  • 发票章与开票方名称不一致是什么情况
  • 应付债券利息费用计算表怎么填
  • sql server 2008 R2安装
  • 基建期业务招待会议记录
  • 交通费 抵扣
  • 微信发放红包如何退回去
  • 新的事业单位财务规则对医院运用的变化
  • 工会筹备金和工会经费滞纳金计算一样吗
  • 未开票收入是怎么算的
  • sql server 2008 2014
  • mysql触发器菜鸟教程
  • 出租车定额发票代码含义
  • 抚恤金的种类有多少种
  • 制造费用的归集是什么意思
  • 电影剧本稿费多少
  • 如何进行税前扣除
  • 票据到期无力支付怎么办
  • 损益平准金结转
  • 白条入账会受到监管吗
  • 小规模季度没超过45万怎么纳税增值税
  • 一家企业至少要运转几个月以上
  • MySQL必知必会读后感
  • 如何创建sql server数据库表
  • xp系统安装流程图
  • 将哪一linux文件系统引入
  • avc文件用什么打开
  • intel的me
  • win10升级失败怎么办
  • 微信小程序获取手机号失败
  • Highcharts+NodeJS搭建数据可视化平台示例
  • android实战教程
  • word-wrap在firefox中不起作用的解决方法
  • 使用nodejs实现简单的局域网聊天功能
  • js怎么设置css
  • Python字符串切片例子
  • 非常棒的jQuery图片轮播效果
  • 前方高能(莞尔wr)晋江
  • js 数组处理
  • ubuntu各种方法卸载软件
  • python flask框架 web服务器
  • 发票 报销期限
  • 税控服务费抵扣填哪
  • 浪潮报销软件安装
  • 广州地税网上服务大厅地址
  • 电子税务局备案财务会计制度
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设