WebSocket和HTTP协议有什么区别?&& 连环问:WebSocket和HTTP长轮询的区别?

WebSocket:

  1. 支持端对端通讯

  2. 可以由client发起,也可以由server发起

  3. 用于:消息通知,直播间讨论区,聊天室,协同编辑

WebSocket连接过程

  1. 先发起一个 HTTP 请求

  2. 成功之后再升级到 WebSocket 协议,再通讯

WebSocket和HTTP协议区别

  1. WebSocket 协议名是 ws://, 可双端发起请求

  2. WebSocket 没有跨域限制

  3. 通过 send 和 onmessage 通讯 (HTTP通过req和res)

扩展:实际项目推荐 socket.io, API更简洁

连环问:WebSocket和HTTP长轮询的区别?

1. HTTP 长轮询:客户端发起请求,服务端阻塞,不会立即返回

**2.**WebSocket:客户端可发起请求,服务端也可发起请求

相关推荐
天天进步20153 小时前
Tunnelto 源码解析 #4:Wormhole 控制通道:WebSocket 如何建立一条“隧道控制线”
网络·websocket·网络协议
古道青阳5 小时前
深入密码学内核:对称/非对称原理、PKI体系及C语言实现
网络协议·https·ssl
夜月yeyue8 小时前
KCP 与 UDP 可靠传输
linux·网络·单片机·网络协议·udp·php
WIZnet8 小时前
W55RP20-EVB-MKR MicroPython 实战(14):MQTT 协议与 OneNET 平台对接
单片机·网络协议·wiznet
GlobalSign数字证书8 小时前
中小企业的 SSL/TLS 证书管理,有更轻量的方案
数据库·网络协议·ssl
郑洁文9 小时前
基于Python的HTTP服务漏洞信息收集工具设计与实现
开发语言·python·http
熊出没11 小时前
我用 Netty TCP 搭建物联网云平台,并对接车辆电池信息解析
物联网·网络协议·tcp/ip
草莓熊Lotso12 小时前
【Linux网络】深入理解 HTTP 协议(一):从基础概念到 URL 编码解码
linux·网络·c++·网络协议·http·软件工程
SilentSamsara13 小时前
HTTP 客户端实战:httpx/重试/限速/连接池/中间件设计
开发语言·网络·python·http·青少年编程·中间件·httpx
程序员Aries13 小时前
tcp-server 项目实现流程、细节与 muduo 对比分析
linux·网络协议·tcp/ip