node.js如何返回二进制文件流
时间: 2023-07-07 08:04:29 浏览: 285
mediasource, MediaSource API作为 node.js 可以写流.zip
在 Node.js 中,可以使用 `fs.createReadStream()` 方法来返回二进制文件流。这个方法会创建一个可读流,可以从指定的文件中读取数据并返回给调用方。
以下是一个示例代码,演示如何使用 `fs.createReadStream()` 方法来返回一个图片文件的二进制流:
```javascript
const http = require('http');
const fs = require('fs');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'image/jpeg'});
const fileStream = fs.createReadStream('image.jpg');
fileStream.pipe(res);
}).listen(8080);
```
在上面的代码中,我们首先使用 `res.writeHead()` 方法设置响应头,指定返回的是 jpeg 格式的图片文件。然后,我们使用 `fs.createReadStream()` 方法创建一个可读流,读取名为 `image.jpg` 的文件。最后,我们通过 `pipe()` 方法将可读流连接到响应流 `res` 上,这样文件的二进制数据就可以被返回到客户端了。
阅读全文