У меня node.js Приложение с интерфейсом в Angular, мне нужно загрузить и загрузить файлы в Azure blob / azure хранилище
Я следовал приведенным здесь инструкциям: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-blob/samples/typescript/src/basic.ts
теперь, когда я загружаю его, он читает изображение или файл в читаемом потоке, как я могу загрузить файл с azure blob
ниже мой код, который перечисляет капли читает в читаемый поток
const { BlobServiceClient, StorageSharedKeyCredential, BlobDownloadResponseModel } = require('@azure/storage-blob');
const uuidv1 = require('uuid/v1');
async ListBlob(req,res){
const blobServiceClient = await BlobServiceClient.fromConnectionString(this.AZURE_STORAGE_CONNECTION_STRING);
const container = blobServiceClient.getContainerClient('mycontainer');
const containerClient = await blobServiceClient.getContainerClient(container.containerName);
let temp = Array();
// List the blob(s) in the container.
for await (const blob of containerClient.listBlobsFlat()) {
temp.push(blob.name);
}
const blockBlobClient = containerClient.getBlockBlobClient(temp[2]);
const downloadBlockBlobResponse = await blockBlobClient.download(0);
let result = await this.streamToString(downloadBlockBlobResponse.readableStreamBody!);
res.send(result);
}
async streamToString(readableStream) {
return new Promise((resolve, reject) => {
const chunks = [];
readableStream.on("data", (data) => {
chunks.push(data.toString());
});
readableStream.on("end", () => {
resolve(chunks.join(""));
});
readableStream.on("error", reject);
});
}