gpt4 book ai didi

javascript - 在 Node.js 套接字中写入和 'data' 事件

转载 作者:行者123 更新时间:2023-12-03 05:10:15 27 4
gpt4 key购买 nike

当通过 Node.js 套接字传递数据时,谁确保数据被完整接收/读取?调用者还是node.js?

每次写入是否对应于一个“数据”事件?我是否需要明确检查以确保接收到的数据长度与写入的数据相对应?换句话说,我是否必须维护一个长度 header ?

最佳答案

当执行写入命令时:socket.write(数据[,编码][,回调]),当数据最终写出时,将执行callback参数 - 这可能不会立即执行。

单个写入命令可能会导致一系列数据事件:

const readable = getReadableStreamSomehow();
readable.on('data', (chunk) => {
// chunk.length bytes of data received
});

接收方需要通过检查所有接收到的 block 的长度来确保它接收到整个缓冲区/字符串。这将需要有一个长度 header 或类似的标记。

附注上面的答案适用于 TCP 之类的套接字。

关于javascript - 在 Node.js 套接字中写入和 'data' 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41853659/

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