位置: 编程技术 - 正文

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

  • 医疗批发企业增值税税负率大概是多少
  • 营改增后土地增值税应税收入的确认
  • 物业公司要交税吗?
  • 所得税可以弥补几年
  • 企业税务包括哪些内容
  • 资金结存期末余额方向
  • 建筑物进项税额可以抵扣吗
  • 垫付生育津贴的钱怎么算
  • 残疾人保障金计算方法
  • 构成业务和不构成业务的会计处理
  • 总分机构移送固定资产是否缴增值税
  • 劳务费代扣代缴后还需要开发票吗
  • 去年销售怎么算
  • 所有的罚款都不能税前扣除吗
  • 居民委员会有没有纳税人识别号吗
  • 小规模季度不超过30万元免税会计分录
  • 增值税完税凭证怎么做账
  • 企业支付个人劳务费需要发票吗
  • 汇票线下清算什么时候能到账
  • PHP:oci_set_client_identifier()的用法_Oracle函数
  • 公司微信转账要上税么
  • linux配置多网卡设置
  • php ajax 实现
  • 跨年的发票作废重新开具需要入账
  • 房企因商品质量问题退租
  • 世界上最贵的鼠标是用什么做的
  • 上飞机可以带2个充电宝吗
  • 集体租赁住房有房产证吗
  • php远程下载图片
  • 营业执照年检认缴和实缴怎么填
  • 减免税费是几级科目
  • 干货!​如何打造我们自己的“ChatGPT”?| 大佬思辨
  • 购车哪些费用可以免
  • 委托 研发费用
  • 车船使用税代征手续费
  • 停车费计税
  • 餐厅场租费可以开发票吗
  • 乘客人身意外保险单可以报销吗
  • 营业收入的意义是什么
  • 出口退税帐务处理
  • 对公账户收钱要手续费吗
  • 会计做账可以写负数吗
  • 企业利润分配应当遵循的原则
  • 固定资产出售增值税减按2%征收,附表一,填写
  • 社保费申报是当月的
  • 固定资产中如何计算折旧
  • 小规模与一般纳税人的界定
  • 印花税滞纳金怎么处理
  • 收到的专票必须当月认证吗
  • 公司开办期间怎么界定
  • 出表的好处
  • 预付账款怎么做账务处理
  • sqlserver游标的使用
  • mysql.sock在哪里
  • sqlserver创建链接服务器连接实例
  • mac mysql密码
  • microsoft office诊断
  • thinkpad e431 bios怎么进入
  • ubuntu下安装QT教程
  • ubuntu做开发怎么样
  • psdrvcheck.exe - psdrvcheck是什么进程 有什么用
  • linux怎样过滤一个关键字
  • Percona Server 5.5.44-37.3/5.6.25-73.0 发布
  • Linux服务器端口状态
  • 手机屏幕尺寸测量工具
  • node.js的作用是什么
  • input和button按钮合到一起
  • java获取两个日期间的所有月份
  • 批处理设置ip地址配置的dns
  • angularjs1.5
  • js实现自动定时功能
  • nodejs详解
  • shell脚本实现监控进程
  • JavaScript toFixed() 方法
  • Javascript字符串出现次数
  • 税控盘开票怎么添加新商品
  • 江苏省南京市国医堂
  • epc项目不接受联合体投标违规吗
  • 契税计算器在线计算
  • 申报地税的流程图
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设