我一直在学习NodeJS中的Streams,特别感兴趣的是'请求'并且'回应'从NodeJS HTTP Server作为参数提供的流。
节点是否会执行一些特殊操作来将传入请求和传出响应转换为NodeJS流?例如,在可读请求流中,节点就像改变数据从客户端发送到HTTP Web服务器的方式,以便能够将请求作为NodeJS流公开给我,在那里我可以使用&#读取数据块。 39;可读'事件?或者是默认的分块数据流在世界范围内的所有http请求,而其他网络框架在历史上只是做了很差的工作,让我暴露于数据流,并自动缓存它,所以我将通过以下方式呈现完整的请求对象默认...经常阻塞,而后台的框架在没有我知道的情况下等待流的每个块进来?
基本上我不太了解HTTP。我看到这篇关于chunked transfer encoding https://en.wikipedia.org/wiki/Chunked_transfer_encoding的文章,但我仍然不清楚这是否是NodeJS利用的。
我会非常感谢任何解释或指向某些教程的方向。
答案 0 :(得分:1)
是的,NodeJS利用HTTP / 1.1 Chunked传输编码机制来发送媒体等大型文件。
NodeJS本质上是异步的,因此它不会等待传输完成。因此,回调函数用于在请求完成后执行您想要的操作。
你有什么具体的想法吗?