gpt4 book ai didi

websocket - 如何知道websocket发送的消息是否成功

转载 作者:行者123 更新时间:2023-12-03 23:26:26 30 4
gpt4 key购买 nike

我在牛仔中使用websocket开发了一个聊天服务器,但是我想知道服务器发送给客户端的消息是否成功。我怎么知道?

最佳答案

Websocket 是传统 TCP 套接字之上的一个相当薄的抽象层。初次握手后,差异很小。所以,问题是:我如何知道远程对等方是否收到了数据 block ?简短的回答:只有当对等方通过应用程序级协议(protocol)明确地确认它时。远程客户端将为您发送的每个数据包发送 TCP ACK 数据包,但是出于充分的理由,这个事实对应用程序来说是隐藏的。接收到 ACK 数据包仅意味着远程 TCP 堆栈已经处理了它,但没有说明客户端应用程序如何(以及是否)处理它。

在您的聊天协议(protocol)中添加一个特殊的“确认接收”消息类型。在所有传出消息中包含一个单调递增的序列号,并在 ACK 消息中包含收到消息的 SN,以准确了解客户端已经处理了多少数据。

关于websocket - 如何知道websocket发送的消息是否成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18287226/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com