HTML5 WebSockets协议是否无损?

时间:2014-01-27 08:52:33

标签: javascript html5 websocket

考虑到它使用TCP / IP,我猜它是,但我不熟悉规范(或其阅读)以确定。另外,它是否也确保以正确的顺序交付和阅读?

这个问题源自我正在编写的HTML5游戏库中的需求,但我认为这不是重点。

1 个答案:

答案 0 :(得分:4)

由于WebSockets基于TCP,因此保证会收到您发送的邮件(或者会引发错误)。

按顺序接收通过相同客户端通过相同(websocket)连接顺序发送的消息(将其视为将所有内容写入文件并在之后读取相同内容),但没有保证消息来自由不同客户端建立的连接建立的不同连接的顺序,即使您知道它们的发送顺序。

后一种情况中的常用方法是在每条消息中嵌入一个时间戳,以便您可以在服务器上重建正确的时间序列。

顺便说一句,如果您的服务器使用线程处理请求,那么即使按顺序接收,也可能无序处理两条消息(但这是另一个故事)。