node.js中传输文件的pipe事件传给主进程时,主进程如何根据传递的文件流保存起来
时间: 2023-12-14 22:35:45 浏览: 80
基于Node.js的大文件分片上传示例
在Node.js中,可以使用`fs`模块来保存文件。当收到文件流时,可以将其传递给`fs.createWriteStream()`方法来创建一个可写流,然后将文件流通过`pipe()`方法传递给可写流即可将其保存起来。
以下是一个示例代码:
```javascript
const http = require('http');
const fs = require('fs');
http.createServer((req, res) => {
if (req.method === 'POST') {
const writeStream = fs.createWriteStream('file.txt');
req.pipe(writeStream);
req.on('end', () => {
console.log('File saved successfully');
res.end('File saved successfully');
});
}
}).listen(8080);
```
在这个示例中,当收到POST请求时,会创建一个可写流`writeStream`并通过`pipe()`方法将收到的文件流传递给它。当文件流传输完成时,会触发`end`事件,此时可以在回调函数中处理文件保存完成后的操作。
阅读全文