[英]Node.js - assign writable stream to a variable
如下面的代碼所示,我可以將base64編碼的流寫入文件,但是我想將base64編碼的字符串分配給變量,而不是創建文件,以便可以將其用於所需的目的。 如何分配response.pipe(base64.encode());
到一個變量作為base64編碼的字符串? 我正在使用base64-stream
編碼傳入流。
const request = xero.call('GET', `/Invoices/${invoiceId}`);
request.setHeader('Accept', 'application/pdf');
request.on('response', async (response) => {
const data = response.pipe(base64.encode());
const file = fs.createWriteStream(`${invoiceId}.txt`);
data.pipe(file);
});
request.end();
要將流的內容存儲為字符串,需要連接base64流,然后將該緩沖區存儲為變量。 為此,我喜歡使用concat-stream
。
用const data = response.pipe(base64.encode());
保持流const data = response.pipe(base64.encode());
但是之后
data.pipe(concat(buf => {
const str = buf.toString('base64')
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.