websocket

websocket与http的区别

WebSocket和HTTP是两种不同的协议,它们有以下几个主要区别:

  • 连接方式:HTTP协议是基于请求和响应的模型,每次客户端需要获取数据时都需要发送一个新的HTTP请求,而WebSocket协议则是一种全双工的协议,在客户端和服务器之间建立一次连接后,双方可以随时发送数据。

  • 数据格式:HTTP协议传输的数据一般采用JSON、XML等格式进行封装,而WebSocket协议则可以直接传输二进制数据。

  • 通信效率:HTTP协议中每次数据传输都需要经过请求和响应的过程,而WebSocket协议则避免了这种重复的过程,可以实现更加高效的实时通信。

  • 安全性:HTTP协议的安全性依赖于SSL/TLS协议,而WebSocket协议本身也支持SSL/TLS加密,可以提供更好的安全保障

websocket状态码(怎么看?)

连接成功状态码

101:HTTP协议切换为WebSocket协议。

连接关闭状态码

1000:正常断开连接。

1001:服务器断开连接。

1002:websocket协议错误。

1003:客户端接受了不支持数据格式(只允许接受文本消息,不允许接受二进制数据,是客户端限制不接受二进制数据,而不是websocket协议不支持二进制数据)。

1006:异常关闭。

1007:客户端接受了无效数据格式(文本消息编码不是utf-8)。

1009:传输数据量过大。

1010:客户端终止连接。

1011:服务器终止连接。

1012:服务端正在重新启动。

1013:服务端临时终止。

1014:通过网关或代理请求服务器,服务器无法及时响应。

1015:TLS握手失败。

连接关闭状态码是WebSocket对象的onclose属性返回的。

其他状态码不常用,所以就不列举说明。

同源策略

在web应用的安全模型中是一个重要概念。在这个策略下,web浏览器允许第一个页面的脚本访问第二个页面里的数据,但是也只有在两个页面有相同的源时。源是由URI,主机名,端口号组合而成的。这个策略可以阻止一个页面上的恶意脚本通过页面的DOM对象获得访问另一个页面上敏感信息的权限。

对于普遍依赖于cookie维护授权用户session的现代浏览器来说,这种机制有特殊意义。客户端必须在不同站点提供的内容之间维持一个严格限制,以防丢失数据机密或者完整性。

相关推荐
0+1117 小时前
Linux --从 poll 到 epoll多路转接
linux·服务器·1024程序员节
阿狸猿7 小时前
论零信任安全架构在信息系统中的应用
1024程序员节
念何架构之路8 小时前
Go reflect 场景实战
1024程序员节
知已难寻8 小时前
第 2 篇 · 云的地基:服务器、存储、网络三大基础设施
运维·服务器·网络·云原生·云计算·负载均衡·1024程序员节
初阳7859 小时前
【基于Qt5仿音乐播放器(六)】——细节打磨与总结
qt·1024程序员节
信誓旦旦的程序猿10 小时前
【Python量化实战宝典 #26】止损与回撤控制手册:移动止损、最大回撤(Python 可跑)
python·1024程序员节·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
长不大的杨瑞杰13 小时前
OpenCode v2 MCP 与插件体系实战:把数据库、工单和内部 API 安全接入 Agent
人工智能·安全·语言模型·软件工程·1024程序员节
深圳市益普科技有限公司13 小时前
半导体 CIM 与 MES 的数据模型分工:工单该由谁持有
1024程序员节
乌暮14 小时前
综合案例:宠物电商系统
java·开发语言·spring·mvc·restful·1024程序员节
几何心凉14 小时前
论文解读|智元 GO-1:VLA 进化到 ViLLA,中间多出来的那个“L“到底有什么用?
机器人·1024程序员节·具身智能·启元机器人