位置: 编程技术 - 正文

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

  • 什么情况下个人资产会被冻结
  • 所得税清算扣除比例
  • 固定资产报废进项税额怎么处理
  • 应纳附加税是什么
  • 税前扣除什么意思
  • 报关单保费000/0.1/1
  • 递延收益的核算
  • 空调安装发票税率
  • 小规模开普票一个季度不能超过多少钱是免税的
  • 劳务派遣小规模纳税人税率是多少
  • 外管证过期了一个月罚款多少
  • 企业减免税享受什么
  • 车船税滞纳
  • 未实际处置资产怎么处理
  • 建安企业会计处理
  • 租赁行业的增值税税率
  • 应扣未扣税款向谁追缴
  • 房地产开发资质管理办法
  • 个体工商户转为企业要交税吗
  • 本月工资下月发是什么意思
  • 损益类科目为什么不影响利润
  • 土地增值税清算方法与技巧
  • 公司旅游的费用怎么算
  • 签发支票怎么做账务处理
  • 企业涉及应付利息的税金
  • 英雄联盟电脑软件图片
  • 税负率的销售收入是什么
  • 税收保全有哪些
  • 跨境服务免征增值税申报怎么填
  • 纳税调整项目有一个其他调增金额是怎么组成的
  • 不良贷款转让需遵循的原则
  • 为公司垫付费用,怎么要回
  • 企业将设备出租应当作为固定资产吗
  • php变量使用之前需要定义变量类型
  • smart模板教程
  • php分页思路
  • 压缩的命令
  • php数组排列组合算法
  • windows刻录cd
  • 销售方开具的红字信息表
  • 在计算土地增值税时质量保证金可以扣除
  • 转账支票只能去开户行买吗?
  • cms静态页面生成原理
  • 新成立的公司企业所得税
  • 资产负债表中其他流动资产包括哪些
  • 水利建设专项基金土增税清算能扣除吗
  • 买个人的二手车能贷款吗
  • 双分录怎么做记账凭证
  • 小规模纳税人低于多少免征增值税
  • 新开企业如何开发票
  • 企业购买的汽车可以抵税吗
  • 补提当年折旧会计分录
  • 公司转投资是什么意思
  • 电商支付的刷单费怎样做记账凭证?
  • 赠送商品给客户怎么写分录
  • 冲减应收账款是什么意思
  • mysql新手入门
  • 触发器的用法
  • windows勒索病毒溯源
  • win10系统遇到错误
  • mac的dns怎么设置最快
  • windows7家长控制
  • iconv.exe
  • centos配ip的方法
  • 如何关闭自动启动项目
  • 重装win7系统后鼠标键盘不能用
  • windows安装mq
  • 动画时期
  • 如何短时间内学会打字
  • perl pi
  • VectorField2D
  • js函数关键字
  • javascript工作
  • bootstrap范例
  • JavaScript中的6种运算符总结
  • python多线程怎么用
  • 云南省税务局咨询电话
  • 四川省电子税务局官网下载
  • 大连天气app
  • 公积金取出后显示未到账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设