WebSocket之socket.io的基本使用

「JavaScript深入」Socket.IO:基于 WebSocket 的实时通信库 Socket.IO 作为 WebSocket 的增强版本,在实时通信领域具有广泛的应用。它提供了事件驱动、自动回退、广播机制等功能,使其在即时聊天、协作编辑、多人游戏等场景中表现出色。如果需要低功耗 IoT 设备通信,可以考虑 MQTT;如果是高效的音视频通信,WebRTC 是更好的选择。不同的应用场景需要选择合适的实时通信技术,以保证系统的稳定性和性能。 阅读详情

 Socket.IO 是一个WebSocket库,可以在客户端和服务器之间实现低延迟、双向和基于事件的通信。它建立在 WebSocket 协议之上,并提供额外的保证,例如回退到 HTTP 长轮询或自动重新连接。

基本使用

安装socket.io

yarn add socket.io

 新建js文件与html文件内容如下

var http = require('http');
var io = require('socket.io');
var server = http.createServer((req,res)=>{
});
server.listen(2183);
// 监听 connection
io.listen(server).on('connection',(user)=>{
	setInterval(()=>{
		user.emit('test','哥们我主动来了'+Math.random());
	},1000);
});
<!doctype html> 
<html> 
<head> 
    <meta charset="utf-8">
    // 引用脚本,固定写法
    <script type="text/javascript" src='http://localhost:2183/
Socket.io 与 WebSocket 背景 工作上需要做一个实时投票系统,因此想到利用 websocket 做数据推送,而后台采用 nodejs 因为需要快速搭建完成该项工作,最终查找到 socket.io 这个 node 库。 而我开发工作一直集中在后台身份验证和前端页面的图表展示,对于 socket.io 本身没有太过关注内部实现,唯一一次关注是在 ios 4.x 系统接收不到 socket.io 的推送是查了一下,后发现 ios... 阅读详情

相关推荐

websocket与socket.io比较与分析

大家参与的项目里多少都会有web server与browser需要长连接互联的场景,当然我也是,之前没有进行太多方案的调研(比如深入理解通信协议和通用的一些解决方案),所以websocket就不假思索地直接用了,包括去年写的框架xframe里也是直接嵌入了官方websocket的library来实现的。 两周前遇到个场景,前端大佬提需求说能否支持socket.io,之前写的websocket的se...

xiaojax的博客 7866

socket.io实现websocket聊天室

现在很流行的websocket的实现socket.io同样包括客户端和服务器端两部分。它不仅简化了接口,使得操作更容易,而且对于那些不支持WebSocket的浏览器,会自动降为Ajax连接,最大限度地保证了兼容性。它的目标是统一通信机制,使得所有浏览器和移动设备都可以进行实时通信。 首先我们需要保证设备已经安装了node.js,我们后续的开发工作都在node环境中执行,如果没安装请点击这里Node...

StarFishing 3785

使用Socket.io实现网络通信(JavaScript)

Socket.io是一个基于事件驱动的实时网络通信库,它可以在客户端和服务器之间建立持久连接,使得实时数据传输变得简单而高效。本文将介绍如何使用Socket.io在JavaScript中实现网络通信,并提供相应的源代码示例。在使用Socket.io之前,我们需要在服务器端和客户端分别安装Socket.io。当启动服务器并打开客户端页面时,多个客户端之间可以实时通信,并将消息显示在消息列表中。在客户端,我们需要在HTML文件中引入Socket.io的客户端库,可以通过CDN引入,也可以将其下载到本地并引入。

ZuqCloud的博客 1569

WebSocket实时通信:Socket.io

随着Node.js Current版本24.10.0的发布(于2025年10月11日发布,由@targos等贡献)和LTS版本22.20.0 'Jod’的稳定支持,Socket.io的最新版本4.8.1(于2024年10月25日发布)继续主导实时库市场。 这个版本引入了自定义传输实现和tryAllTransports选项,提升了连接可靠性,并优化了与Node 24的兼容,如更好的异步处理。 本文将引入Socket.io,详解事件监听/发射、聊天室示例和心跳机制。我们将结合历史演进、代码示例、性能分析和202

zimin的专栏 1519

Socket.io与WebSocket技术深入解析

Socket.IO是一个用于实时、双向和基于事件的通信的JavaScript库。它允许开发者轻松地实现在Web浏览器与Web服务器之间进行实时通信。这种通信方式是全双工的,意味着服务器和客户端可以同时进行数据的发送和接收。Socket.IO特别擅长处理各种网络条件下的稳定连接,即使在网络环境不佳时也能保持连接的有效和高效。

weixin_36231030的博客 1005

eLabRadio软件无线电虚实结合仿真开发平台简介

在使用仿真平台时,不要关闭设备或断开设备与PC机之间的网络连接,否则,仿真平台将无法正常工作。注:采用eNodeX设备认证方式,当出现“设备不存在”的报错时,请检查计算机IP是否和硬件设备IP处于同一网段,或者是否是先连接好网线,再开启硬件设备的。①此登录方式下,需要先建立软件与硬件的通信:在登录窗口点击【网络配置】,参照下图输入设备IP,服务器地址无需设置,设置完成后点击确认,此时登录界面无需设置账号密码;,拷贝到电脑上,使用管理员权限运行setup.exe,下一步直到安装完成,桌面会生成快捷方式。

weixin_55349105的博客 6319

ESP32-CAM与Thonny的完美搭配:从烧录到通信的完整流程

本文详细介绍了如何将ESP32-CAM与Thonny IDE完美结合,从固件烧录到通信测试的完整流程。通过硬件连接、MicroPython固件烧录、Thonny环境配置以及摄像头功能开发等步骤,帮助开发者快速搭建高效的物联网开发环境,实现图像采集与无线通信功能。

tomato的博客 1125

NVIDIA DGX Spark实战指南:从开箱到AI模型高效部署

本文详细介绍了NVIDIA DGX Spark的开箱体验、硬件架构及AI模型高效部署实战指南。从1 PetaFLOP算力的迷你设备到Grace Blackwell超级芯片的深度解析,再到五分钟快速上手指南和大模型部署技巧,帮助开发者充分利用这款全球最小AI超级计算机的性能优势。

weixin_29239279的博客 1366

sysbench测试系统内存

系统内存读写测试方法,报告解读

m0_61066945的博客 3018

PlutoSDR驱动安装避坑指南:从设备管理器异常到MATLAB 2023b完美识别

本文是一份详细的PlutoSDR驱动安装与MATLAB 2023b集成排错指南。针对Windows系统下常见的设备管理器异常、驱动兼容性问题,提供了从旧驱动清理、手动指定驱动文件到USB连接稳定性排查的完整解决方案。重点阐述了如何通过离线安装硬件支持包,并利用MATLAB命令进行连接测试与射频信号验证,最终实现设备的完美识别与稳定调用。

weixin_29159441的博客 428

MMC混合型换流器系统设计与开关模型仿真

摘要:本文针对220kV交流/400kV直流电压等级,设计了由20个半桥和20个全桥子模块组成的混合型MMC换流器系统。通过建立开关函数等效模型,研究了其拓扑结构、工作原理及控制策略,包括NLM调制、电容电压均衡和环流抑制。MATLAB/Simulink仿真结果表明,系统直流电压波动控制在±5%以内,交流电流THD低于1.8%,验证了混合型MMC在高压大功率应用中的良好性能。该研究为工程实践提供了参考依据。 关键词:模块化多电平换流器;开关函数模型;混合子模块;最近电平逼近调制;电容电压均衡

huanghm88的专栏 133

工业级AI智能体落地:OpenClaw+ONNX Runtime全栈部署,端到端延迟压至12ms

OpenClaw+ONNX的组合为工业AI智能体的落地提供了一套完整、高效、安全的解决方案。它解决了传统云端智能体在工业场景中面临的延迟、安全和稳定性问题,实现了本地数据闭环和毫秒级响应。未来,随着边缘计算和轻量级大模型技术的发展,工业AI智能体将变得更加智能和强大。我们可以预见,在不久的将来,工厂里的每一台设备都将拥有自己的AI智能体,它们能够自主感知、自主决策、自主执行,真正实现工业生产的全自动化和智能化。👉 点击我的头像进入主页,关注专栏第一时间收到更新提醒,有问题评论区交流,看到都会回。

2601_94871597的博客 735

Epicor ERP 界面新增客制化字段操作方法

我发现国内对于epicor这个erp软件的教程非常少,所以录制一些我实际遇到的需求,整理了实现过程,提供给大家参考。

cqxianggang的专栏 413

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

上一篇: 【高德地图WEB开发】 入门篇(地图/搜索/经纬度/缩放层级)
下一篇: 一篇文章带你彻底搞懂事件循环
琢鸣
琢鸣 新星创作者: 前端开发技术领域 新星创作者: 前端开发技术领域
博客等级 码龄7年 9626粉丝 53原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

琢鸣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值