Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

185
Vistas
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 Respuestas
Responde la pregunta

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 Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda