javascript - Socket IO 中的确认与发出

标签 javascript websocket socket.io

我什么时候应该在 socket.io 中使用确认而不是发出? 它是否应该作为请求/响应用于数据传输。

假设我有一个带有请求对话列表端点的应用程序,服务器将包含一个名为my-conversations 的监听器。要将数据发送回调用者,我应该使用 acknowledgement 回调还是应该 emit 回调?

最佳答案

恕我直言,创建“emit”是为了发送数据,但存在“acknowledgment”是为了告诉您某些数据已被您的配对正确接收。

这在您使用计算或密码学检查数据完整性时特别有用。

它主要用于避免重复的代码片段,并省去了经典配对调用/响应事件的痛苦......

所以,问题1:当你想确认数据是否正确接收时使用它。
问题 2:您可以自动将其用作数据传输检查“个人协议(protocol)”。
问题 3:在那种特定情况下,更喜欢“发射”来发送数据,但调用者可以在接收到数据后向发射器发送确认(或不发送,取决于数据的完整性)。

更多信息:
Acknowledgement_(data_networks)

关于javascript - Socket IO 中的确认与发出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39086588/

相关文章:

javascript - 从父脚本访问预加载的图像以在子脚本中使用。如何?

javascript - socket.io 向服务器发送轮询请求

ruby - 请求通过 websocket 读取变得乱码

javascript - 从选定的持续时间循环播放视频

javascript - Angular.js 在输入 :checkbox 中将 ng-model 与 ng-repeat 绑定(bind)

python - 通过 websockets 流式传输音频 IBM 不工作

node.js - [Express][Nodejs] 如何在 socket.io 连接期间解密 express-session cookie?

node.js - 使用socket.io、nodejs和mongodb处理聊天系统

javascript - 在网页上创建监听套接字

c# - 在代码隐藏中从 Page_Load 调用 javascript 函数