Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

194
Visualizações
Cómo esperar a que se complete la operación en Azure Blob Service

Cómo usar async/await en blob service. Estoy intentando descargar y comprimir la carpeta y, por lo tanto, quiero esperar hasta que se complete la descarga, para poder continuar y comprimir ese archivo.

Último código:

 const blobServiceClient = BlobServiceClient.fromConnectionString("connect string"); const containerClient = blobServiceClient.getContainerClient(containerName); for await (const blob of containerClient.listBlobsFlat({ prefix: path })) { if (fs.existsSync(fileUploadPath)) { var sourceFilePath = fileUploadPath + '/' + project.id + '/' + blob.name; if (!fs.existsSync(sourceFilePath)) { fs.mkdir(require('path').dirname(sourceFilePath), { recursive: true }, async(err) => { if (err) { console.log("Failed to mkdir:" + err); } console.log(blob.name) await containerClient.getBlobClient(blob.name).downloadToFile(sourceFilePath,0,undefined); }); } } else{ console.log('downloads folder does not configures!') }

aquí tengo un par de dudas,

  1. ¿Qué tan eficiente es downloadToFile? ¿Puede descargar blobs de gran tamaño?
  2. solo se descarga el blob inmediato que también tiene datos incompletos y no se descargan los blobs en el subdirectorio.
  3. Pensé, la transmisión de datos es una forma eficiente de descargar blobs. ¿Hay alguna API para transmitir datos a local, como teníamos una en la biblioteca anterior (getBlobToStream)?
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Con la última versión del SDK de Azure Storage Blob , puede convertir su código existente en algo así:

 const { BlobServiceClient, StorageSharedKeyCredential } = require("@azure/storage-blob"); const account = "<account>"; const accountKey = "<accountkey>"; const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey); const blobServiceClient = new BlobServiceClient( `https://${account}.blob.core.windows.net`, sharedKeyCredential ); const containerName = '<container name>'; const path = '<prefix>'; async function download() { var containerClient = blobServiceClient.getContainerClient(containerName); for await (const blob of containerClient.listBlobsFlat({ prefix: path })) { await containerClient.getBlobClient(blob.name) .downloadToFile(`./${blob.name}`); } } download() .then(() => console.log('Done')) .catch((ex) => console.log(ex.message));
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda