小程序WebSocket

文章目录

一、WebSocket

1、为什么要用WebSocket

为什么我们有了http请求之后,还要用WebSocket呢?
http只能是单向发起的,只能由客户端主动发起,服务端被动响应。服务端无法主动向客户端发送消息,如果想实现类似于聊天室这种即时通讯的功能,就需要使用消息轮询。轮询的效率低,比较消耗资源。(每次建立http连接都进行三次握手,并且每次请求都需要携带请求头),开发人员为了解决这个问题,发明了webSocket

2、什么是WebSocket

WebSocket是HTML5规范提出的一种协议。
它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送技术的一种。

3、websocket特点

websocket建立连接时,数据是通过http传输的,建立连接后就不需要http协议了。
websocket建立连接后就是全双工模式,也是基于tcp协议。
建立连接之后,不必在浏览器(客户端)发送request之后服务器才能发送信息到浏览器,这时候服务器有主动权,可以随时发消息给浏览器(客户端)。
发送的信息中不必带有head部分信息了,相对于http来说,降低了服务器的压力,极大的减少了不必要的网络流量与延迟。
没有同源限制,客户端可以与任意服务器通信
协议标识符是ws(如果加密,则为wss),服务器网址就是 URL。

4、使用方法

  • 打开链接
  • 发送消息
  • 监听服务端消息
  • 关闭连接
相关推荐
禾高网络9 分钟前
互联网医院|AI 互联网医院成品开发系统
java·大数据·人工智能·小程序
小羊Yveesss1 小时前
2026年微信小程序搭建算什么费用?年费、设计费、开发费和维护费
微信小程序·小程序
一口一口吃成大V2 小时前
lattice mipi ip开启DESKEW_EN属性(“ENABLED“),输出异常
网络·网络协议·tcp/ip
宠友信息2 小时前
MySQL 租户数据隔离在即时通讯源码后端中的落地方式
java·数据库·spring boot·redis·websocket·mysql
宠友信息5 小时前
内容社区源码多端数据协议与 Spring Boot 状态流转实现思路
java·spring boot·websocket·uni-app
奇牙coding1236 小时前
OpenAI Realtime API WebSocket 断连 4008/1006 怎么解决?不是 Key 失效,是实时多模态独有的会话超时规则
python·websocket·网络协议·ai
Helen_cai6 小时前
OpenHarmony http 网络请求封装与全局拦截实战(API Version23 + 适配版)
网络·网络协议·http·华为·harmonyos
刘马想放假6 小时前
生成树协议 STP、RSTP、MSTP 分析:二层环网如何既冗余又不环路
运维·网络协议
发光小北8 小时前
SSF-BOX-200 PLC 数据采集网关如何应用?
网络协议
码农客栈18 小时前
小程序学习(二十六)之“订单详情”
小程序