如何使用Graph Client返回的ReadableStream?

问题描述 投票:0回答:1

在获取用户个人资料图片时,我使用 microsoft graph 客户端的

getStream()
希望传输图像数据。

记录返回值声称返回的对象是

ReadableStream
,但它不是我认识的任何可读流 - 它似乎没有管道方法,也没有
getReader
,并且在我期望采用网络的任何内容中都不被接受流,如
Readable.fromWeb
。 如何将其变成传统的节点可读?

node.js typescript microsoft-graph-api
1个回答
0
投票

返回什么样的“流”对我来说也是一个谜。不管怎样,我就是这样做的(连接内存中的内容)。如果您需要管道,您也可以这样做,而无需将整个文件读入内存。

const getFileContent = async (path: string) => Promise<Buffer> {

    const stream = await graph.api(path).getStream();

    const chunks: any[] = [];
    for await (const chunk of stream) {
      chunks.push(Buffer.from(chunk));
    }

    return Buffer.concat(chunks);
}
© www.soinside.com 2019 - 2024. All rights reserved.