javascript - Websockets 消息完整性

标签 javascript websocket connection message integrity

当在客户端和服务器之间使用 WebSocket 全双工数据连接时,我能否保证从服务器发送两条消息时,我会在客户端收到这两条完全相同的消息,TCP 可以做到这一点不是

换句话说,如果服务端依次发送helloits me,客户端是否总是收到两条包含helloits me 或者客户端是否可能收到 helloit 然后 s me 或者甚至只有一条消息 helloits me

最佳答案

WebSocket 最初有文本消息的开始和结束字节,但那是旧信息。 (2011 年 12 月)框架中有一个长度组件。顺便说一句,在框架规范中有一个标志,指定框架是整个“消息”还是“消息片段”,即还有其他框架构成这个“消息”。由接收器正确组合片段以传递给应用程序代码。通常你不必考虑这个,除非你有非常大的“消息”(将 WS“消息”视为“数据”而不是真正的消息......WS 本身并不是真正的“消息传递”协议(protocol))。

但请注意,WebSocket 是一种低级传输。可以将其视为基于 Web 的 TCP。应用程序程序员应该“在 WS/WSS 上”使用高级协议(protocol),而不用担心排序、重新连接、存在、发布/订阅、元组空间、保证交付等。如果我们不这样做,就会有几十个几十年前的应用协议(protocol)将被重新发明。

关于javascript - Websockets 消息完整性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35930996/

相关文章:

javascript - 套接字IO : Forcing flash sockets, "No transport available"

mysql - ruby SQL : undefined method `[]'

javascript - 为ajax参数添加循环

javascript - work 函数如何返回另一个接受另一个参数的函数?

javascript - 如何检测 iframe 何时已加载

php - Websockets 不适用于 Google Chrome

javascript - 如何引用由 ECS/Fargate 的容器见解创建的 CloudWatch 指标

node.js - Socket.io 从客户端发出,但服务器未接收到

c - Raspberry Pi 客户端到 Mac 服务器错误

connection - IBM Connection 更改文档所有者