有没有办法控制tcp套接字写入的每一步,以了解大型图像数据传输的服务器端进度?
最糟糕的是,如何更改主节点bin文件夹以添加此事件?
最后,有人可以向我解释为什么node.js http tcp套接字的最大长度为1460?
答案 0 :(得分:1)
socket.write(data,[encoding],[callback])
在套接字上发送数据。 第二个参数指定a的情况下的编码 string - 默认为UTF8编码。
如果将整个数据成功刷新到内核,则返回true 缓冲。如果全部或部分数据在用户中排队,则返回false 记忆。当缓冲区再次释放时,将发出'drain'。
数据时将执行可选的回调参数 最终写出来 - 这可能不是立即的。
事件:'排泄'
写入缓冲区变空时发出。可 用来限制上传。
另请参见:socket.write()的返回值
因此,您可以指定在刷新数据后调用的回调,也可以在套接字上注册“drain”事件处理程序。这实际上并没有告诉你另一方面的进展,但正确实现的服务器将在其队列已满时发送适当的通知,这将触发Node.js端的事件。