学习 MERN Stack 第 39 天

我正在进行 MERN stack 学习之旅的第 39 天。

昨天我学习了 GET 和 POST 等 HTTP 方法。今天我专注于后端操作。我学习了服务器如何处理数据流(data streams)和请求体解析(body parsing)。

当用户发送表单或文件时,服务器并不会一次性接收全部内容。数据是以小块的形式到达的。这些小块被称为 chunks。

Node.js 使用 streams(流)来节省内存。它不会立即将大文件加载到服务器内存中,而是将数据分成小部分进行处理。

以下是该过程的工作原理:

在 Node.js 中,你无法立即获取请求体(request body)。你需要监听特定的网络事件:

你使用 Buffer.concat 将这些碎片拼接起来,然后将它们转换为字符串。

这种方法能保持服务器的高速和高效,并防止在处理大文件时发生内存崩溃。

来源:https://dev.to/ali_hamza_589ec7b3eb6688d/day-39-of-learning-mern-stack-hkp