gpt4 book ai didi

javascript - NodeJs Microsoft Azure 存储 SDK 下载文件到流

转载 作者:行者123 更新时间:2023-12-03 02:58:54 25 4
gpt4 key购买 nike

我刚刚开始使用适用于 NodeJS 的 Microsoft Azure 存储 SDK ( https://github.com/Azure/azure-storage-node ),并已成功将我的第一个 pdf 文件上传到云存储。

但是,现在我开始查看文档,以便将我的文件下载为node_buffer(因此我不必使用fs.createWriteStream),但是文档没有给出任何有关其工作原理的示例。他们唯一写的是“还有多种下载文件的方法。例如,getFileToStream 将文件下载到流中:”,但他们只展示了一个示例,即使用 fs .createWriteStream,我不想使用它。

我在 Google 上也找不到任何对我真正有帮助的内容,所以我想知道是否有人有这方面的经验并且可以与我分享代码示例?

最佳答案

getFileToStream 函数需要一个可写流作为参数。如果您希望将所有数据写入Buffer而不是文件,则只需创建一个自定义可写流。

const { Writable } = require('stream');

let bufferArray = [];
const myWriteStream = new Writable({
write(chunk, encoding, callback) {
bufferArray.push(...chunk)
callback();
}
});

myWriteStream.on('finish', function () {
// all the data is stored inside this dataBuffer
let dataBuffer = Buffer.from(bufferArray);
})

然后将myWriteStream传递给getFileToStream函数

fileService.getFileToStream('taskshare', 'taskdirectory', 'taskfile', myWriteStream, function(error, result, response) {
if (!error) {
// file retrieved
}
});

关于javascript - NodeJs Microsoft Azure 存储 SDK 下载文件到流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47491878/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com