Compartir a través de


BlockBlobClient class

BlockBlobClient define un conjunto de operaciones aplicables a blobs en bloques.

Extends

Constructores

BlockBlobClient(string, PipelineLike)

Crea una instancia de BlockBlobClient. Este método acepta una dirección URL codificada o una dirección URL no codificada que apunta a un blob en bloques. La cadena de dirección URL codificada NO se escapará dos veces, solo se escaparán los caracteres especiales de la ruta de acceso url. Si un nombre de blob incluye ? o %, el nombre del blob se debe codificar en la dirección URL.

BlockBlobClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

Crea una instancia de BlockBlobClient. Este método acepta una dirección URL codificada o una dirección URL no codificada que apunta a un blob en bloques. La cadena de dirección URL codificada NO se escapará dos veces, solo se escaparán los caracteres especiales de la ruta de acceso url. Si un nombre de blob incluye ? o %, el nombre del blob se debe codificar en la dirección URL.

BlockBlobClient(string, string, string, StoragePipelineOptions)

Crea una instancia de BlockBlobClient.

Propiedades

accountName
containerName

Nombre del contenedor de almacenamiento al que está asociado el blob.

credential

Por ejemplo, AnonymousCredential, StorageSharedKeyCredential o cualquier credencial del @azure/identity paquete para autenticar las solicitudes en el servicio. También puede proporcionar un objeto que implemente la interfaz TokenCredential. Si no se especifica, se usa AnonymousCredential.

name

Nombre del blob.

url

Valor de cadena de dirección URL codificada.

Métodos

abortCopyFromURL(string, BlobAbortCopyFromURLOptions)

Anula una operación asincrónica de copia de blob asincrónica y deja un blob de destino con una longitud cero y metadatos completos. Versión 2012-02-12 y posteriores.

beginCopyFromURL(string, BlobBeginCopyFromURLOptions)

Copia de forma asincrónica un blob en un destino dentro de la cuenta de almacenamiento. Este método devuelve un sondeo de operación de larga duración que permite esperar indefinidamente hasta que se complete la copia. También puede cancelar una copia antes de que se complete llamando cancelOperation a en el sondeo. Tenga en cuenta que la devolución de llamada onProgress no se invocará si la operación se completa en la primera solicitud y si se intenta cancelar una copia completada, se producirá un error. En la versión 2012-02-12 y posteriores, el origen de una operación de copia de blobs puede ser un blob confirmado en cualquier cuenta de Almacenamiento de Azure. A partir de la versión 2015-02-21, el origen de una operación de copia de blobs puede ser un archivo de Azure en cualquier cuenta de Almacenamiento de Azure. Las cuentas de almacenamiento creadas desde el 7 de junio de 2012 son las únicas que permiten que la operación Copy Blob copie desde otra cuenta de almacenamiento.

commitBlockList(string[], BlockBlobCommitBlockListOptions)

Escribe un blob especificando la lista de identificadores de bloque que conforman el blob. Para poder escribirlo como parte de un blob, un bloque se debe haber escrito correctamente en el servidor en una operación <xref:stageBlock> anterior. Puede llamar a <xref:commitBlockList> para actualizar un blob cargando solo los bloques que han cambiado y luego confirmando a la vez los bloques nuevos y los existentes. Los bloques no especificados en la lista de bloques y eliminados permanentemente.

createSnapshot(BlobCreateSnapshotOptions)

Crea una instantánea de solo lectura de un blob.

delete(BlobDeleteOptions)

Marca el blob o la instantánea especificados para su eliminación. El blob se elimina posteriormente durante la recolección de elementos no utilizados. Tenga en cuenta que para eliminar un blob, debe eliminar todas sus instantáneas. Puede eliminar ambos al mismo tiempo con la operación Eliminar blob.

deleteIfExists(BlobDeleteOptions)

Marca el blob o la instantánea especificados para su eliminación si existe. El blob se elimina posteriormente durante la recolección de elementos no utilizados. Tenga en cuenta que para eliminar un blob, debe eliminar todas sus instantáneas. Puede eliminar ambos al mismo tiempo con la operación Eliminar blob.

deleteImmutabilityPolicy(BlobDeleteImmutabilityPolicyOptions)

Elimine la directiva de immutablility en el blob.

download(number, number, BlobDownloadOptions)

Lee o descarga un blob del sistema, incluidos sus metadatos y propiedades. También puede llamar a Get Blob para leer una instantánea.

  • En Node.js, los datos se devuelven en una secuencia legibleStreamBody legible.
  • En los exploradores, los datos se devuelven en un blobBody de promesa.
downloadToBuffer(Buffer, number, number, BlobDownloadToBufferOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Descarga un blob de Azure en paralelo a un búfer. El desplazamiento y el recuento son opcionales, descarga todo el blob si no se proporcionan.

Advertencia: los búferes solo pueden admitir archivos de hasta un gigabyte en sistemas de 32 bits o aproximadamente dos gigabytes en sistemas de 64 bits debido a limitaciones de Node.js/V8. En el caso de los blobs mayores que este tamaño, tenga en cuenta <xref:downloadToFile>.

downloadToBuffer(number, number, BlobDownloadToBufferOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Descarga un blob de Azure en paralelo a un búfer. El desplazamiento y el recuento son opcionales, descarga todo el blob si no se proporcionan.

Advertencia: los búferes solo pueden admitir archivos de hasta un gigabyte en sistemas de 32 bits o aproximadamente dos gigabytes en sistemas de 64 bits debido a limitaciones de Node.js/V8. En el caso de los blobs mayores que este tamaño, tenga en cuenta <xref:downloadToFile>.

downloadToFile(string, number, number, BlobDownloadOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Descarga un blob de Azure en un archivo local. Se produce un error si la ruta de acceso del archivo especificada ya se cierra. El desplazamiento y el recuento son opcionales, pasan 0 y sin definir respectivamente para descargar todo el blob.

exists(BlobExistsOptions)

Devuelve true si el recurso de blob de Azure representado por este cliente existe; False en caso contrario. NOTA: Use esta función con cuidado, ya que otros clientes o aplicaciones pueden eliminar un blob existente. Viceversa, otros clientes o aplicaciones pueden agregar nuevos blobs después de que se complete esta función.

generateSasUrl(BlobGenerateSasUrlOptions)

Solo está disponible para BlobClient construido con una credencial de clave compartida. Genera un URI de firma de acceso compartido (SAS) de Blob Service basado en las propiedades y parámetros del cliente pasados. La SAS está firmada por la credencial de clave compartida del cliente.

getAppendBlobClient()

Crea un objeto AppendBlobClient.

getBlobLeaseClient(string)

Obtenga un <xref:BlobLeaseClient> objeto que administre concesiones en el blob.

getBlockBlobClient()

Crea un objeto BlockBlobClient.

getBlockList(BlockListType, BlockBlobGetBlockListOptions)

Devuelve la lista de bloques que se han cargado como parte de un blob en bloques mediante el filtro de lista de bloques especificado.

getPageBlobClient()

Crea un objeto PageBlobClient.

getProperties(BlobGetPropertiesOptions)

Devuelve todos los metadatos definidos por el usuario, las propiedades HTTP estándar y las propiedades del sistema para el blob. No devuelve el contenido de los blobs.

getTags(BlobGetTagsOptions)

Obtiene las etiquetas asociadas al blob subyacente.

query(string, BlockBlobQueryOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Consulta rápida para un blob con formato JSON o CSV.

Ejemplo de uso (Node.js):

// Query and convert a blob to a string
const queryBlockBlobResponse = await blockBlobClient.query("select * from BlobStorage");
const downloaded = (await streamToBuffer(queryBlockBlobResponse.readableStreamBody)).toString();
console.log("Query blob content:", downloaded);

async function streamToBuffer(readableStream) {
  return new Promise((resolve, reject) => {
    const chunks = [];
    readableStream.on("data", (data) => {
      chunks.push(data instanceof Buffer ? data : Buffer.from(data));
    });
    readableStream.on("end", () => {
      resolve(Buffer.concat(chunks));
    });
    readableStream.on("error", reject);
  });
}
setAccessTier(BlockBlobTier | PremiumPageBlobTier | string, BlobSetTierOptions)

Establece el nivel en un blob. La operación se permite en un blob en páginas de una cuenta de Premium Storage y en un blob en bloques en una cuenta de almacenamiento de blobs (solo almacenamiento con redundancia local). El nivel de un blob en páginas Premium determina el tamaño, IOPS y ancho de banda permitidos del blob. El nivel de un blob en bloques determina el tipo de almacenamiento frecuente, esporádico o de archivo. Esta operación no actualiza la ETag del blob.

setHTTPHeaders(BlobHTTPHeaders, BlobSetHTTPHeadersOptions)

Establece las propiedades del sistema en el blob. Si no se proporciona ningún valor o ningún valor proporcionado para los encabezados HTTP de blob especificados, estos encabezados HTTP de blob sin un valor se borrarán.

setImmutabilityPolicy(BlobImmutabilityPolicy, BlobSetImmutabilityPolicyOptions)

Establezca la directiva de immutablility en el blob.

setLegalHold(boolean, BlobSetLegalHoldOptions)

Establezca la suspensión legal en el blob.

setMetadata(Metadata, BlobSetMetadataOptions)

Establece los metadatos definidos por el usuario para el blob especificado como uno o varios pares de nombre y valor. Si no se proporciona ninguna opción o no hay metadatos definidos en el parámetro , se quitarán los metadatos del blob.

setTags(Tags, BlobSetTagsOptions)

Establece etiquetas en el blob subyacente. Un blob puede tener hasta 10 etiquetas. Las claves de etiqueta deben tener entre 1 y 128 caracteres. Los valores de etiqueta deben tener entre 0 y 256 caracteres. Los caracteres de clave y valor válidos incluyen letras minúsculas y mayúsculas, dígitos (0-9), espacio (' '), más ('+'), menos ('-'), punto ('.'), barra diagonal ('/'), dos puntos (':'), iguales ('=') y subrayado de subrayado ('_') .

stageBlock(string, HttpRequestBody, number, BlockBlobStageBlockOptions)

Carga el bloque especificado en el "área de almacenamiento provisional" del blob en bloques para que se confirme más adelante mediante una llamada a commitBlockList.

stageBlockFromURL(string, string, number, number, BlockBlobStageBlockFromURLOptions)

La operación Stage Block From URL crea un nuevo bloque que se confirmará como parte de un blob donde el contenido se lee desde una dirección URL. Esta API está disponible a partir de la versión 2018-03-28.

syncCopyFromURL(string, BlobSyncCopyFromURLOptions)

La operación Copy From URL sincrónica copia un blob o un recurso de Internet en un nuevo blob. No devolverá una respuesta hasta que se complete la copia.

syncUploadFromURL(string, BlockBlobSyncUploadFromURLOptions)

Crea un nuevo blob en bloques donde se lee el contenido del blob desde una dirección URL determinada. Esta API se admite a partir de la versión 2020-04-08. No se admiten actualizaciones parciales con Put Blob from URL; El contenido de un blob existente se sobrescribe con el contenido del nuevo blob. Para realizar actualizaciones parciales en el contenido de un blob en bloques mediante una dirección URL de origen, use <xref:stageBlockFromURL> y <xref:commitBlockList>.

undelete(BlobUndeleteOptions)

Restaura el contenido y los metadatos del blob eliminado temporalmente y las instantáneas de eliminación temporal asociadas. Undelete Blob solo se admite en la versión 2017-07-29 o posterior.

upload(HttpRequestBody, number, BlockBlobUploadOptions)

Crea un nuevo blob en bloques o actualiza el contenido de un blob en bloques existente. La actualización de un blob en bloques existente sobrescribe los metadatos existentes en él. No se admiten actualizaciones parciales; El contenido del blob existente se sobrescribe con el nuevo contenido. Para realizar una actualización parcial de un blob en bloques, use <xref:stageBlock> y <xref:commitBlockList>. Se trata de un método de carga no paralelo, use <xref:uploadFile><xref:uploadStream> o <xref:uploadBrowserData> para mejorar el rendimiento con la carga de simultaneidad.

uploadBrowserData(Blob | ArrayBuffer | ArrayBufferView, BlockBlobParallelUploadOptions)

SOLO ESTÁ DISPONIBLE EN EXPLORADORES. Carga un objeto Blob/File/ArrayBuffer/ArrayBufferView del explorador en blob en bloques.

Cuando la longitud del búfer sea menor o igual que 256 MB, este método usará 1 llamada de carga para finalizar la carga. De lo contrario, este método llamará <xref:stageBlock> a para cargar bloques y, por último, llamará <xref:commitBlockList> a para confirmar la lista de bloqueos.

Una opción común <xref:BlockBlobParallelUploadOptions.blobHTTPHeaders> para establecer es blobContentType, lo que permite al explorador proporcionar funcionalidad basada en el tipo de archivo.

uploadData(Buffer | Blob | ArrayBuffer | ArrayBufferView, BlockBlobParallelUploadOptions)

Carga un objeto Buffer(Node.js)/Blob(browser)/ArrayBuffer/ArrayBufferView en un blockBlob. Cuando la longitud de los datos no es superior a la especificada <xref:BlockBlobParallelUploadOptions.maxSingleShotSize> (el valor predeterminado es <xref:BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES>), este método usará 1 <xref:upload> llamada para finalizar la carga. De lo contrario, este método llamará <xref:stageBlock> a para cargar bloques y, por último, llamará <xref:commitBlockList> a para confirmar la lista de bloqueos.

Una opción común <xref:BlockBlobParallelUploadOptions.blobHTTPHeaders> para establecer es blobContentType, lo que permite al explorador proporcionar funcionalidad basada en el tipo de archivo.

uploadFile(string, BlockBlobParallelUploadOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Carga un archivo local en bloques en un blob en bloques.

Cuando el tamaño del archivo sea menor o igual que 256 MB, este método usará 1 llamada de carga para finalizar la carga. De lo contrario, este método llamará a stageBlock para cargar bloques y, por último, llamará a commitBlockList para confirmar la lista de bloqueos.

uploadStream(Readable, number, number, BlockBlobUploadStreamOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Carga una secuencia legible Node.js en blob en bloques.

SUGERENCIAS PARA MEJORAR EL RENDIMIENTO:

  • HighWaterMark de flujo de entrada es mejor establecer un mismo valor con el parámetro bufferSize, lo que evitará las operaciones Buffer.concat().
withSnapshot(string)

Crea un nuevo objeto BlockBlobClient idéntico al origen, pero con la marca de tiempo de instantánea especificada. Proporcione "" quitará la instantánea y devolverá una dirección URL al blob base.

withVersion(string)

Crea un nuevo objeto BlobClient que apunta a una versión de este blob. Proporcione "" quitará el versionId y devolverá un cliente al blob base.

Detalles del constructor

BlockBlobClient(string, PipelineLike)

Crea una instancia de BlockBlobClient. Este método acepta una dirección URL codificada o una dirección URL no codificada que apunta a un blob en bloques. La cadena de dirección URL codificada NO se escapará dos veces, solo se escaparán los caracteres especiales de la ruta de acceso url. Si un nombre de blob incluye ? o %, el nombre del blob se debe codificar en la dirección URL.

new BlockBlobClient(url: string, pipeline: PipelineLike)

Parámetros

url

string

Cadena de dirección URL que apunta al blob en bloques de Azure Storage, como "https://myaccount.blob.core.windows.net/mycontainer/blockblob". Puede anexar una SAS si usa AnonymousCredential, como "https://myaccount.blob.core.windows.net/mycontainer/blockblob?sasString". Este método acepta una dirección URL codificada o una dirección URL no codificada que apunta a un blob. La cadena de dirección URL codificada NO se escapará dos veces, solo se escaparán los caracteres especiales de la ruta de acceso url. Sin embargo, si un nombre de blob incluye ? o %, el nombre del blob se debe codificar en la dirección URL. Por ejemplo, un blob denominado "my?blob%", la dirección URL debe ser "https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25".

pipeline
PipelineLike

Llame a newPipeline() para crear una canalización predeterminada o proporcione una canalización personalizada.

BlockBlobClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

Crea una instancia de BlockBlobClient. Este método acepta una dirección URL codificada o una dirección URL no codificada que apunta a un blob en bloques. La cadena de dirección URL codificada NO se escapará dos veces, solo se escaparán los caracteres especiales de la ruta de acceso url. Si un nombre de blob incluye ? o %, el nombre del blob se debe codificar en la dirección URL.

new BlockBlobClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)

Parámetros

url

string

Cadena de dirección URL que apunta al blob en bloques de Azure Storage, como "https://myaccount.blob.core.windows.net/mycontainer/blockblob". Puede anexar una SAS si usa AnonymousCredential, como "https://myaccount.blob.core.windows.net/mycontainer/blockblob?sasString". Este método acepta una dirección URL codificada o una dirección URL no codificada que apunta a un blob. La cadena de dirección URL codificada NO se escapará dos veces, solo se escaparán los caracteres especiales de la ruta de acceso url. Sin embargo, si un nombre de blob incluye ? o %, el nombre del blob se debe codificar en la dirección URL. Por ejemplo, un blob denominado "my?blob%", la dirección URL debe ser "https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25".

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Por ejemplo, AnonymousCredential, StorageSharedKeyCredential o cualquier credencial del @azure/identity paquete para autenticar las solicitudes en el servicio. También puede proporcionar un objeto que implemente la interfaz TokenCredential. Si no se especifica, se usa AnonymousCredential.

options
StoragePipelineOptions

Opcional. Opciones para configurar la canalización HTTP.

BlockBlobClient(string, string, string, StoragePipelineOptions)

Crea una instancia de BlockBlobClient.

new BlockBlobClient(connectionString: string, containerName: string, blobName: string, options?: StoragePipelineOptions)

Parámetros

connectionString

string

Cadena de conexión de la cuenta o una cadena de conexión de SAS de una cuenta de almacenamiento de Azure. [ Nota: la cadena de conexión de la cuenta solo se puede usar en NODE.JS tiempo de ejecución. ] Ejemplo de cadena de conexión de cuenta:DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net Ejemplo de cadena de conexión de SAS: BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString

containerName

string

El nombre del contenedor.

blobName

string

Nombre del blob.

options
StoragePipelineOptions

Opcional. Opciones para configurar la canalización HTTP.

Detalles de las propiedades

accountName

accountName: string

Valor de propiedad

string

containerName

Nombre del contenedor de almacenamiento al que está asociado el blob.

string containerName

Valor de propiedad

string

credential

Por ejemplo, AnonymousCredential, StorageSharedKeyCredential o cualquier credencial del @azure/identity paquete para autenticar las solicitudes en el servicio. También puede proporcionar un objeto que implemente la interfaz TokenCredential. Si no se especifica, se usa AnonymousCredential.

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Valor de propiedad

name

Nombre del blob.

string name

Valor de propiedad

string

url

Valor de cadena de dirección URL codificada.

url: string

Valor de propiedad

string

Detalles del método

abortCopyFromURL(string, BlobAbortCopyFromURLOptions)

Anula una operación asincrónica de copia de blob asincrónica y deja un blob de destino con una longitud cero y metadatos completos. Versión 2012-02-12 y posteriores.

function abortCopyFromURL(copyId: string, options?: BlobAbortCopyFromURLOptions)

Parámetros

copyId

string

Id. de la operación Copiar desde la dirección URL.

options
BlobAbortCopyFromURLOptions

Opciones opcionales para la operación Desenlazamiento de copia desde la dirección URL del blob.

Devoluciones

beginCopyFromURL(string, BlobBeginCopyFromURLOptions)

Copia de forma asincrónica un blob en un destino dentro de la cuenta de almacenamiento. Este método devuelve un sondeo de operación de larga duración que permite esperar indefinidamente hasta que se complete la copia. También puede cancelar una copia antes de que se complete llamando cancelOperation a en el sondeo. Tenga en cuenta que la devolución de llamada onProgress no se invocará si la operación se completa en la primera solicitud y si se intenta cancelar una copia completada, se producirá un error. En la versión 2012-02-12 y posteriores, el origen de una operación de copia de blobs puede ser un blob confirmado en cualquier cuenta de Almacenamiento de Azure. A partir de la versión 2015-02-21, el origen de una operación de copia de blobs puede ser un archivo de Azure en cualquier cuenta de Almacenamiento de Azure. Las cuentas de almacenamiento creadas desde el 7 de junio de 2012 son las únicas que permiten que la operación Copy Blob copie desde otra cuenta de almacenamiento.

function beginCopyFromURL(copySource: string, options?: BlobBeginCopyFromURLOptions)

Parámetros

copySource

string

dirección URL al blob o archivo de Azure de origen.

options
BlobBeginCopyFromURLOptions

Opciones opcionales para la operación Iniciar copia desde la dirección URL del blob.

Devoluciones

Promise<PollerLike<PollOperationState<BlobBeginCopyFromURLResponse>, BlobBeginCopyFromURLResponse>>

commitBlockList(string[], BlockBlobCommitBlockListOptions)

Escribe un blob especificando la lista de identificadores de bloque que conforman el blob. Para poder escribirlo como parte de un blob, un bloque se debe haber escrito correctamente en el servidor en una operación <xref:stageBlock> anterior. Puede llamar a <xref:commitBlockList> para actualizar un blob cargando solo los bloques que han cambiado y luego confirmando a la vez los bloques nuevos y los existentes. Los bloques no especificados en la lista de bloques y eliminados permanentemente.

function commitBlockList(blocks: string[], options?: BlockBlobCommitBlockListOptions)

Parámetros

blocks

string[]

Matriz de un valor de 64 bytes codificado en base64

options
BlockBlobCommitBlockListOptions

Opciones para la operación De lista de bloques de confirmación de blobs en bloques.

Devoluciones

Datos de respuesta para la operación Block Blob Commit Block List.

createSnapshot(BlobCreateSnapshotOptions)

Crea una instantánea de solo lectura de un blob.

function createSnapshot(options?: BlobCreateSnapshotOptions)

Parámetros

options
BlobCreateSnapshotOptions

Opciones opcionales para la operación Crear instantánea de blob.

Devoluciones

delete(BlobDeleteOptions)

Marca el blob o la instantánea especificados para su eliminación. El blob se elimina posteriormente durante la recolección de elementos no utilizados. Tenga en cuenta que para eliminar un blob, debe eliminar todas sus instantáneas. Puede eliminar ambos al mismo tiempo con la operación Eliminar blob.

function delete(options?: BlobDeleteOptions)

Parámetros

options
BlobDeleteOptions

Opciones opcionales para la operación De eliminación de blobs.

Devoluciones

deleteIfExists(BlobDeleteOptions)

Marca el blob o la instantánea especificados para su eliminación si existe. El blob se elimina posteriormente durante la recolección de elementos no utilizados. Tenga en cuenta que para eliminar un blob, debe eliminar todas sus instantáneas. Puede eliminar ambos al mismo tiempo con la operación Eliminar blob.

function deleteIfExists(options?: BlobDeleteOptions)

Parámetros

options
BlobDeleteOptions

Opciones opcionales para la operación De eliminación de blobs.

Devoluciones

deleteImmutabilityPolicy(BlobDeleteImmutabilityPolicyOptions)

Elimine la directiva de immutablility en el blob.

function deleteImmutabilityPolicy(options?: BlobDeleteImmutabilityPolicyOptions)

Parámetros

options
BlobDeleteImmutabilityPolicyOptions

Opciones opcionales para eliminar la directiva de inmutabilidad en el blob.

Devoluciones

download(number, number, BlobDownloadOptions)

Lee o descarga un blob del sistema, incluidos sus metadatos y propiedades. También puede llamar a Get Blob para leer una instantánea.

  • En Node.js, los datos se devuelven en una secuencia legibleStreamBody legible.
  • En los exploradores, los datos se devuelven en un blobBody de promesa.
function download(offset?: number, count?: number, options?: BlobDownloadOptions)

Parámetros

offset

number

Desde qué posición del blob se va a descargar, mayor o igual que 0

count

number

Cantidad de datos que se van a descargar, mayores que 0. Se descargará al final cuando no se defina

options
BlobDownloadOptions

Opciones opcionales para la operación de descarga de blobs.

Ejemplo de uso (Node.js):

// Download and convert a blob to a string
const downloadBlockBlobResponse = await blobClient.download();
const downloaded = await streamToBuffer(downloadBlockBlobResponse.readableStreamBody);
console.log("Downloaded blob content:", downloaded.toString());

async function streamToBuffer(readableStream) {
return new Promise((resolve, reject) => {
const chunks = [];
readableStream.on("data", (data) => {
chunks.push(data instanceof Buffer ? data : Buffer.from(data));
});
readableStream.on("end", () => {
resolve(Buffer.concat(chunks));
});
readableStream.on("error", reject);
});
}

Ejemplo de uso (explorador):

// Download and convert a blob to a string
const downloadBlockBlobResponse = await blobClient.download();
const downloaded = await blobToString(await downloadBlockBlobResponse.blobBody);
console.log(
  "Downloaded blob content",
  downloaded
);

async function blobToString(blob: Blob): Promise<string> {
  const fileReader = new FileReader();
  return new Promise<string>((resolve, reject) => {
    fileReader.onloadend = (ev: any) => {
      resolve(ev.target!.result);
    };
    fileReader.onerror = reject;
    fileReader.readAsText(blob);
  });
}

Devoluciones

downloadToBuffer(Buffer, number, number, BlobDownloadToBufferOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Descarga un blob de Azure en paralelo a un búfer. El desplazamiento y el recuento son opcionales, descarga todo el blob si no se proporcionan.

Advertencia: los búferes solo pueden admitir archivos de hasta un gigabyte en sistemas de 32 bits o aproximadamente dos gigabytes en sistemas de 64 bits debido a limitaciones de Node.js/V8. En el caso de los blobs mayores que este tamaño, tenga en cuenta <xref:downloadToFile>.

function downloadToBuffer(buffer: Buffer, offset?: number, count?: number, options?: BlobDownloadToBufferOptions)

Parámetros

buffer

Buffer

El búfer que se va a rellenar debe tener una longitud mayor que el recuento.

offset

number

Desde qué posición del blob en bloques se va a descargar(en bytes)

count

number

Cantidad de datos (en bytes) que se van a descargar. Se descargará al final al pasar sin definir

options
BlobDownloadToBufferOptions

BlobDownloadToBufferOptions

Devoluciones

Promise<Buffer>

downloadToBuffer(number, number, BlobDownloadToBufferOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Descarga un blob de Azure en paralelo a un búfer. El desplazamiento y el recuento son opcionales, descarga todo el blob si no se proporcionan.

Advertencia: los búferes solo pueden admitir archivos de hasta un gigabyte en sistemas de 32 bits o aproximadamente dos gigabytes en sistemas de 64 bits debido a limitaciones de Node.js/V8. En el caso de los blobs mayores que este tamaño, tenga en cuenta <xref:downloadToFile>.

function downloadToBuffer(offset?: number, count?: number, options?: BlobDownloadToBufferOptions)

Parámetros

offset

number

Desde qué posición del blob en bloques se va a descargar(en bytes)

count

number

Cantidad de datos (en bytes) que se van a descargar. Se descargará al final al pasar sin definir

options
BlobDownloadToBufferOptions

BlobDownloadToBufferOptions

Devoluciones

Promise<Buffer>

downloadToFile(string, number, number, BlobDownloadOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Descarga un blob de Azure en un archivo local. Se produce un error si la ruta de acceso del archivo especificada ya se cierra. El desplazamiento y el recuento son opcionales, pasan 0 y sin definir respectivamente para descargar todo el blob.

function downloadToFile(filePath: string, offset?: number, count?: number, options?: BlobDownloadOptions)

Parámetros

filePath

string

offset

number

Desde qué posición del blob en bloques se va a descargar.

count

number

Cantidad de datos que se van a descargar. Se descargará al final al pasar sin definir.

options
BlobDownloadOptions

Opciones para las opciones de descarga de blobs.

Devoluciones

Los datos de respuesta de la operación de descarga de blobs, pero con readableStreamBody establecido en indefinido, ya que su contenido ya se lee y escribe en un archivo local en la ruta de acceso especificada.

exists(BlobExistsOptions)

Devuelve true si el recurso de blob de Azure representado por este cliente existe; False en caso contrario. NOTA: Use esta función con cuidado, ya que otros clientes o aplicaciones pueden eliminar un blob existente. Viceversa, otros clientes o aplicaciones pueden agregar nuevos blobs después de que se complete esta función.

function exists(options?: BlobExistsOptions)

Parámetros

options
BlobExistsOptions

opciones para la operación Exists.

Devoluciones

Promise<boolean>

generateSasUrl(BlobGenerateSasUrlOptions)

Solo está disponible para BlobClient construido con una credencial de clave compartida. Genera un URI de firma de acceso compartido (SAS) de Blob Service basado en las propiedades y parámetros del cliente pasados. La SAS está firmada por la credencial de clave compartida del cliente.

function generateSasUrl(options: BlobGenerateSasUrlOptions)

Parámetros

options
BlobGenerateSasUrlOptions

Parámetros opcionales.

Devoluciones

Promise<string>

El URI de SAS que consta del URI para el recurso representado por este cliente, seguido del token de SAS generado.

getAppendBlobClient()

Crea un objeto AppendBlobClient.

function getAppendBlobClient()

Devoluciones

getBlobLeaseClient(string)

Obtenga un <xref:BlobLeaseClient> objeto que administre concesiones en el blob.

function getBlobLeaseClient(proposeLeaseId?: string)

Parámetros

proposeLeaseId

string

Identificador de concesión propuesto inicial.

Devoluciones

Nuevo objeto BlobLeaseClient para administrar concesiones en el blob.

getBlockBlobClient()

Crea un objeto BlockBlobClient.

function getBlockBlobClient()

Devoluciones

getBlockList(BlockListType, BlockBlobGetBlockListOptions)

Devuelve la lista de bloques que se han cargado como parte de un blob en bloques mediante el filtro de lista de bloques especificado.

function getBlockList(listType: BlockListType, options?: BlockBlobGetBlockListOptions)

Parámetros

listType
BlockListType

Especifica si se debe devolver la lista de bloques confirmados, la lista de bloques sin confirmar o ambas listas.

options
BlockBlobGetBlockListOptions

Opciones para la operación Obtener lista de bloques de blobs en bloques.

Devoluciones

Datos de respuesta para la operación Obtener lista de bloques de blobs en bloques.

getPageBlobClient()

Crea un objeto PageBlobClient.

function getPageBlobClient()

Devoluciones

getProperties(BlobGetPropertiesOptions)

Devuelve todos los metadatos definidos por el usuario, las propiedades HTTP estándar y las propiedades del sistema para el blob. No devuelve el contenido de los blobs.

function getProperties(options?: BlobGetPropertiesOptions)

Parámetros

options
BlobGetPropertiesOptions

Opciones opcionales para la operación Obtener propiedades.

Devoluciones

getTags(BlobGetTagsOptions)

Obtiene las etiquetas asociadas al blob subyacente.

function getTags(options?: BlobGetTagsOptions)

Parámetros

Devoluciones

query(string, BlockBlobQueryOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Consulta rápida para un blob con formato JSON o CSV.

Ejemplo de uso (Node.js):

// Query and convert a blob to a string
const queryBlockBlobResponse = await blockBlobClient.query("select * from BlobStorage");
const downloaded = (await streamToBuffer(queryBlockBlobResponse.readableStreamBody)).toString();
console.log("Query blob content:", downloaded);

async function streamToBuffer(readableStream) {
  return new Promise((resolve, reject) => {
    const chunks = [];
    readableStream.on("data", (data) => {
      chunks.push(data instanceof Buffer ? data : Buffer.from(data));
    });
    readableStream.on("end", () => {
      resolve(Buffer.concat(chunks));
    });
    readableStream.on("error", reject);
  });
}
function query(query: string, options?: BlockBlobQueryOptions)

Parámetros

query

string

Devoluciones

setAccessTier(BlockBlobTier | PremiumPageBlobTier | string, BlobSetTierOptions)

Establece el nivel en un blob. La operación se permite en un blob en páginas de una cuenta de Premium Storage y en un blob en bloques en una cuenta de almacenamiento de blobs (solo almacenamiento con redundancia local). El nivel de un blob en páginas Premium determina el tamaño, IOPS y ancho de banda permitidos del blob. El nivel de un blob en bloques determina el tipo de almacenamiento frecuente, esporádico o de archivo. Esta operación no actualiza la ETag del blob.

function setAccessTier(tier: BlockBlobTier | PremiumPageBlobTier | string, options?: BlobSetTierOptions)

Parámetros

tier

BlockBlobTier | PremiumPageBlobTier | string

Nivel que se va a establecer en el blob. Los valores válidos son Hot, Cool o Archive.

options
BlobSetTierOptions

Opciones opcionales para la operación Blob Set Tier.

Devoluciones

setHTTPHeaders(BlobHTTPHeaders, BlobSetHTTPHeadersOptions)

Establece las propiedades del sistema en el blob. Si no se proporciona ningún valor o ningún valor proporcionado para los encabezados HTTP de blob especificados, estos encabezados HTTP de blob sin un valor se borrarán.

function setHTTPHeaders(blobHTTPHeaders?: BlobHTTPHeaders, options?: BlobSetHTTPHeadersOptions)

Parámetros

blobHTTPHeaders
BlobHTTPHeaders

Si no se proporciona ningún valor o ningún valor proporcionado para los encabezados HTTP de blob especificados, estos encabezados HTTP de blob sin un valor se borrarán. Un encabezado común que se va a establecer permite blobContentType al explorador proporcionar funcionalidad basada en el tipo de archivo.

options
BlobSetHTTPHeadersOptions

Opciones opcionales para la operación De encabezados HTTP de conjunto de blobs.

Devoluciones

setImmutabilityPolicy(BlobImmutabilityPolicy, BlobSetImmutabilityPolicyOptions)

Establezca la directiva de immutablility en el blob.

function setImmutabilityPolicy(immutabilityPolicy: BlobImmutabilityPolicy, options?: BlobSetImmutabilityPolicyOptions)

Parámetros

immutabilityPolicy
BlobImmutabilityPolicy
options
BlobSetImmutabilityPolicyOptions

Opciones opcionales para establecer la directiva de inmutabilidad en el blob.

Devoluciones

setLegalHold(boolean, BlobSetLegalHoldOptions)

Establezca la suspensión legal en el blob.

function setLegalHold(legalHoldEnabled: boolean, options?: BlobSetLegalHoldOptions)

Parámetros

legalHoldEnabled

boolean

options
BlobSetLegalHoldOptions

Opciones opcionales para establecer la suspensión legal en el blob.

Devoluciones

setMetadata(Metadata, BlobSetMetadataOptions)

Establece los metadatos definidos por el usuario para el blob especificado como uno o varios pares de nombre y valor. Si no se proporciona ninguna opción o no hay metadatos definidos en el parámetro , se quitarán los metadatos del blob.

function setMetadata(metadata?: Metadata, options?: BlobSetMetadataOptions)

Parámetros

metadata
Metadata

Reemplace los metadatos existentes por este valor. Si no se quita ningún valor proporcionado, se quitarán los metadatos existentes.

options
BlobSetMetadataOptions

Opciones opcionales para establecer la operación de metadatos.

Devoluciones

setTags(Tags, BlobSetTagsOptions)

Establece etiquetas en el blob subyacente. Un blob puede tener hasta 10 etiquetas. Las claves de etiqueta deben tener entre 1 y 128 caracteres. Los valores de etiqueta deben tener entre 0 y 256 caracteres. Los caracteres de clave y valor válidos incluyen letras minúsculas y mayúsculas, dígitos (0-9), espacio (' '), más ('+'), menos ('-'), punto ('.'), barra diagonal ('/'), dos puntos (':'), iguales ('=') y subrayado de subrayado ('_') .

function setTags(tags: Tags, options?: BlobSetTagsOptions)

Parámetros

tags
Tags

Devoluciones

stageBlock(string, HttpRequestBody, number, BlockBlobStageBlockOptions)

Carga el bloque especificado en el "área de almacenamiento provisional" del blob en bloques para que se confirme más adelante mediante una llamada a commitBlockList.

function stageBlock(blockId: string, body: HttpRequestBody, contentLength: number, options?: BlockBlobStageBlockOptions)

Parámetros

blockId

string

Valor de 64 bytes codificado en base64

body

HttpRequestBody

Datos que se van a cargar en el área de ensayo.

contentLength

number

Número de bytes que se van a cargar.

options
BlockBlobStageBlockOptions

Opciones para la operación Block Blob Stage Block.

Devoluciones

Datos de respuesta para la operación Block Blob Stage Block.

stageBlockFromURL(string, string, number, number, BlockBlobStageBlockFromURLOptions)

La operación Stage Block From URL crea un nuevo bloque que se confirmará como parte de un blob donde el contenido se lee desde una dirección URL. Esta API está disponible a partir de la versión 2018-03-28.

function stageBlockFromURL(blockId: string, sourceURL: string, offset?: number, count?: number, options?: BlockBlobStageBlockFromURLOptions)

Parámetros

blockId

string

Valor de 64 bytes codificado en base64

sourceURL

string

Especifica la dirección URL del blob. El valor puede ser una dirección URL de hasta 2 KB de longitud que especifica un blob. El valor debe estar codificado para URL tal y como aparecería en un URI de solicitud. El blob de origen debe ser público o debe autenticarse a través de una firma de acceso compartido. Si el blob de origen es público, no se requiere autenticación para realizar la operación. Estos son algunos ejemplos de direcciones URL de objeto de origen: - https://myaccount.blob.core.windows.net/mycontainer/myblob - https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=

offset

number

Desde qué posición del blob se va a descargar, mayor o igual que 0

count

number

Cantidad de datos que se van a descargar, mayores que 0. Se descargará al final cuando no se defina

options
BlockBlobStageBlockFromURLOptions

Opciones para la operación Block Blob Stage Block From URL .

Devoluciones

Datos de respuesta para la operación Block Blob Stage Block From URL .

syncCopyFromURL(string, BlobSyncCopyFromURLOptions)

La operación Copy From URL sincrónica copia un blob o un recurso de Internet en un nuevo blob. No devolverá una respuesta hasta que se complete la copia.

function syncCopyFromURL(copySource: string, options?: BlobSyncCopyFromURLOptions)

Parámetros

copySource

string

La dirección URL de origen desde la que se va a copiar, la firma de acceso compartido (SAS) quizás sea necesaria para la autenticación.

Devoluciones

syncUploadFromURL(string, BlockBlobSyncUploadFromURLOptions)

Crea un nuevo blob en bloques donde se lee el contenido del blob desde una dirección URL determinada. Esta API se admite a partir de la versión 2020-04-08. No se admiten actualizaciones parciales con Put Blob from URL; El contenido de un blob existente se sobrescribe con el contenido del nuevo blob. Para realizar actualizaciones parciales en el contenido de un blob en bloques mediante una dirección URL de origen, use <xref:stageBlockFromURL> y <xref:commitBlockList>.

function syncUploadFromURL(sourceURL: string, options?: BlockBlobSyncUploadFromURLOptions)

Parámetros

sourceURL

string

Especifica la dirección URL del blob. El valor puede ser una dirección URL de hasta 2 KB de longitud que especifica un blob. El valor debe estar codificado para URL tal y como aparecería en un URI de solicitud. El blob de origen debe ser público o debe autenticarse a través de una firma de acceso compartido. Si el blob de origen es público, no se requiere autenticación para realizar la operación. Estos son algunos ejemplos de direcciones URL de objeto de origen: - https://myaccount.blob.core.windows.net/mycontainer/myblob - https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=

options
BlockBlobSyncUploadFromURLOptions

Parámetros opcionales.

Devoluciones

undelete(BlobUndeleteOptions)

Restaura el contenido y los metadatos del blob eliminado temporalmente y las instantáneas de eliminación temporal asociadas. Undelete Blob solo se admite en la versión 2017-07-29 o posterior.

function undelete(options?: BlobUndeleteOptions)

Parámetros

options
BlobUndeleteOptions

Opciones opcionales para la operación Recuperar blob.

Devoluciones

upload(HttpRequestBody, number, BlockBlobUploadOptions)

Crea un nuevo blob en bloques o actualiza el contenido de un blob en bloques existente. La actualización de un blob en bloques existente sobrescribe los metadatos existentes en él. No se admiten actualizaciones parciales; El contenido del blob existente se sobrescribe con el nuevo contenido. Para realizar una actualización parcial de un blob en bloques, use <xref:stageBlock> y <xref:commitBlockList>. Se trata de un método de carga no paralelo, use <xref:uploadFile><xref:uploadStream> o <xref:uploadBrowserData> para mejorar el rendimiento con la carga de simultaneidad.

function upload(body: HttpRequestBody, contentLength: number, options?: BlockBlobUploadOptions)

Parámetros

body

HttpRequestBody

Blob, string, ArrayBuffer, ArrayBufferView o una función que devuelve una nueva secuencia legible cuyo desplazamiento es desde el origen de datos.

contentLength

number

Longitud del cuerpo en bytes. Use Buffer.byteLength() para calcular la longitud del cuerpo de una cadena, incluidos caracteres no codificados en Base64/Hexadecimal.

options
BlockBlobUploadOptions

Opciones para la operación de carga de blobs en bloques.

Devoluciones

Datos de respuesta para la operación de carga de blobs en bloques.

Ejemplo de uso:

const content = "Hello world!";
const uploadBlobResponse = await blockBlobClient.upload(content, content.length);

uploadBrowserData(Blob | ArrayBuffer | ArrayBufferView, BlockBlobParallelUploadOptions)

Advertencia

Esta API ya está en desuso.

Use <xref:uploadData> instead.

SOLO ESTÁ DISPONIBLE EN EXPLORADORES. Carga un objeto Blob/File/ArrayBuffer/ArrayBufferView del explorador en blob en bloques.

Cuando la longitud del búfer sea menor o igual que 256 MB, este método usará 1 llamada de carga para finalizar la carga. De lo contrario, este método llamará <xref:stageBlock> a para cargar bloques y, por último, llamará <xref:commitBlockList> a para confirmar la lista de bloqueos.

Una opción común <xref:BlockBlobParallelUploadOptions.blobHTTPHeaders> para establecer es blobContentType, lo que permite al explorador proporcionar funcionalidad basada en el tipo de archivo.

function uploadBrowserData(browserData: Blob | ArrayBuffer | ArrayBufferView, options?: BlockBlobParallelUploadOptions)

Parámetros

browserData

Blob | ArrayBuffer | ArrayBufferView

Blob, File, ArrayBuffer o ArrayBufferView

options
BlockBlobParallelUploadOptions

Opciones para cargar datos del explorador.

Devoluciones

Datos de respuesta para la operación de carga de blobs.

uploadData(Buffer | Blob | ArrayBuffer | ArrayBufferView, BlockBlobParallelUploadOptions)

Carga un objeto Buffer(Node.js)/Blob(browser)/ArrayBuffer/ArrayBufferView en un blockBlob. Cuando la longitud de los datos no es superior a la especificada <xref:BlockBlobParallelUploadOptions.maxSingleShotSize> (el valor predeterminado es <xref:BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES>), este método usará 1 <xref:upload> llamada para finalizar la carga. De lo contrario, este método llamará <xref:stageBlock> a para cargar bloques y, por último, llamará <xref:commitBlockList> a para confirmar la lista de bloqueos.

Una opción común <xref:BlockBlobParallelUploadOptions.blobHTTPHeaders> para establecer es blobContentType, lo que permite al explorador proporcionar funcionalidad basada en el tipo de archivo.

function uploadData(data: Buffer | Blob | ArrayBuffer | ArrayBufferView, options?: BlockBlobParallelUploadOptions)

Parámetros

data

Buffer | Blob | ArrayBuffer | ArrayBufferView

Buffer(Node.js), Blob, ArrayBuffer o ArrayBufferView

Devoluciones

uploadFile(string, BlockBlobParallelUploadOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Carga un archivo local en bloques en un blob en bloques.

Cuando el tamaño del archivo sea menor o igual que 256 MB, este método usará 1 llamada de carga para finalizar la carga. De lo contrario, este método llamará a stageBlock para cargar bloques y, por último, llamará a commitBlockList para confirmar la lista de bloqueos.

function uploadFile(filePath: string, options?: BlockBlobParallelUploadOptions)

Parámetros

filePath

string

Ruta de acceso completa del archivo local

options
BlockBlobParallelUploadOptions

Opciones para cargar en la operación blob en bloques.

Devoluciones

Datos de respuesta para la operación de carga de blobs.

uploadStream(Readable, number, number, BlockBlobUploadStreamOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME. Carga una secuencia legible Node.js en blob en bloques.

SUGERENCIAS PARA MEJORAR EL RENDIMIENTO:

  • HighWaterMark de flujo de entrada es mejor establecer un mismo valor con el parámetro bufferSize, lo que evitará las operaciones Buffer.concat().
function uploadStream(stream: Readable, bufferSize?: number, maxConcurrency?: number, options?: BlockBlobUploadStreamOptions)

Parámetros

stream

Readable

Node.js secuencia legible

bufferSize

number

Tamaño de cada búfer asignado, también el tamaño del bloque en el blob en bloques cargado. El valor predeterminado es de 8 MB

maxConcurrency

number

La simultaneidad máxima indica el número máximo de búferes que se pueden asignar, una correlación positiva con la simultaneidad máxima de carga. El valor predeterminado es 5

options
BlockBlobUploadStreamOptions

Opciones para cargar stream en una operación de blob en bloques.

Devoluciones

Datos de respuesta para la operación de carga de blobs.

withSnapshot(string)

Crea un nuevo objeto BlockBlobClient idéntico al origen, pero con la marca de tiempo de instantánea especificada. Proporcione "" quitará la instantánea y devolverá una dirección URL al blob base.

function withSnapshot(snapshot: string)

Parámetros

snapshot

string

Marca de tiempo de la instantánea.

Devoluciones

Nuevo objeto BlockBlobClient idéntico al origen, pero con la marca de tiempo de instantánea especificada.

withVersion(string)

Crea un nuevo objeto BlobClient que apunta a una versión de este blob. Proporcione "" quitará el versionId y devolverá un cliente al blob base.

function withVersion(versionId: string)

Parámetros

versionId

string

VersionId.

Devoluciones

Nuevo objeto BlobClient que apunta a la versión de este blob.