小程序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、使用方法

  • 打开链接
  • 发送消息
  • 监听服务端消息
  • 关闭连接
相关推荐
小草cys35 分钟前
【解决】华为欧拉系统上遇到能 ping 通 IP 地址(如 8.8.8.8)但无法 ping 通域名(如 www.baidu.com)的情况
网络·网络协议·tcp/ip
重启编程之路1 小时前
python 基础学习socket -UDP编程
python·网络协议·学习·udp
站长朋友1 小时前
解决SSL证书安装后网站仍显示“不安全”的问题
网络协议·安全·ssl·ssl证书安装不安全·锐安信ssltrus·ocsp响应速度·根证书链完整
踏浪无痕1 小时前
记一次被 K8s 网络 SNAT 坑惨的经历
网络协议·kubernetes
YDS8295 小时前
苍穹外卖 —— Spring Task和WebSocket的运用以及订单统一处理、订单的提醒和催单功能的实现
java·spring boot·后端·websocket·spring
呜呜。5 小时前
WebSocket-学习调研
websocket·网络协议·学习
2501_915909065 小时前
Flutter 应用怎么加固,多工具组合的工程化实战(Flutter 加固/Dart 混淆/IPA 成品加固/Ipa Guard + CI)
android·flutter·ios·ci/cd·小程序·uni-app·iphone
挠到秃头的涛某6 小时前
华为防火墙web配置SSL-在外人员访问内网资源
运维·网络·网络协议·tcp/ip·华为·ssl·防火墙
树在风中摇曳6 小时前
TCP连接还在吗?主机拔掉网线后再插上,连接会断开吗?
arm开发·网络协议·tcp/ip
せいしゅん青春之我7 小时前
【JavaEE初阶】IP协议-IP地址不够用了咋办?
java·服务器·网络·网络协议·tcp/ip·java-ee