BlobServiceClient class
Un BlobServiceClient representa un cliente para el servicio Azure Storage Blob, lo que le permite manipular contenedores de blobs.
- Extends
-
StorageClient
Constructores
Blob |
Crea una instancia de BlobServiceClient. |
Blob |
Crea una instancia de BlobServiceClient. |
Propiedades heredadas
account |
|
credential | Por ejemplo, AnonymousCredential, StorageSharedKeyCredential o cualquier credencial del |
url | Valor de cadena de dirección URL codificada. |
Métodos
create |
Cree un contenedor de blobs. Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/create-container. |
delete |
Elimina un contenedor de blobs. |
find |
Devuelve un iterador asincrónico para buscar todos los blobs con la etiqueta especificada en la cuenta especificada. .byPage() devuelve un iterador asincrónico para enumerar los blobs de las páginas. Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties. Ejemplo de uso de
Ejemplo con
Ejemplo con
Ejemplo de uso de paginación con un marcador:
|
from |
Crea una instancia de BlobServiceClient a partir de la cadena de conexión. |
generate |
Solo está disponible para BlobServiceClient construido con una credencial de clave compartida. Genera un URI de firma de acceso compartido (SAS) de una cuenta de blob basada en las propiedades y parámetros del cliente pasados. La SAS está firmada por la credencial de clave compartida del cliente. Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas. |
get |
La operación Obtener información de la cuenta devuelve el nombre de SKU y el tipo de cuenta de la cuenta especificada. La operación Obtener información de la cuenta está disponible en las versiones de servicio a partir de la versión 2018-03-28. Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-account-information. |
get |
Crea un objeto BlobBatchClient para realizar operaciones por lotes. Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/blob-batch. |
get |
Crea un objeto ContainerClient |
get |
Obtiene las propiedades de blob service de una cuenta de almacenamiento, incluidas las propiedades de las reglas de Storage Analytics y CORS (uso compartido de recursos entre orígenes). Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties. |
get |
Recupera las estadísticas relacionadas con la replicación para el servicio Blob. Solo está disponible en el extremo de ubicación secundario cuando está habilitada la replicación con redundancia geográfica con acceso de lectura para la cuenta de almacenamiento. Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-stats. |
get |
SOLO ESTÁ DISPONIBLE CUANDO SE USA LA AUTENTICACIÓN DE TOKEN DE PORTADOR (TokenCredential). Recupera una clave de delegación de usuarios para Blob Service. Solo se trata de una operación válida cuando se usa la autenticación de token de portador. Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key. |
list |
Devuelve un iterador asincrónico para enumerar todos los contenedores de la cuenta especificada. .byPage() devuelve un iterador asincrónico para enumerar los contenedores de las páginas. Ejemplo de uso de
Ejemplo con
Ejemplo con
Ejemplo de uso de paginación con un marcador:
|
set |
Establece las propiedades para el punto de conexión de Blob Service de una cuenta de almacenamiento, incluidas las propiedades para Storage Analytics, las reglas cors (uso compartido de recursos entre orígenes) y la configuración de eliminación temporal. Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties. |
undelete |
Restaure un contenedor de blobs eliminado anteriormente. Esta API solo es funcional si la eliminación temporal del contenedor está habilitada para la cuenta de almacenamiento asociada al contenedor. |
Detalles del constructor
BlobServiceClient(string, PipelineLike)
Crea una instancia de BlobServiceClient.
new BlobServiceClient(url: string, pipeline: PipelineLike)
Parámetros
- url
-
string
Cadena de cliente que apunta a Azure Storage Blob Service, como "https://myaccount.blob.core.windows.net". Puede anexar una SAS si usa AnonymousCredential, como "https://myaccount.blob.core.windows.net?sasString".
- pipeline
- PipelineLike
Llame a newPipeline() para crear una canalización predeterminada o proporcione una canalización personalizada.
BlobServiceClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)
Crea una instancia de BlobServiceClient.
new BlobServiceClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)
Parámetros
- url
-
string
Cadena de cliente que apunta a Azure Storage Blob Service, como "https://myaccount.blob.core.windows.net". Puede anexar una SAS si usa AnonymousCredential, como "https://myaccount.blob.core.windows.net?sasString".
- 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.
Ejemplo de uso de DefaultAzureCredential de @azure/identity
:
const account = "<storage account name>";
const defaultAzureCredential = new DefaultAzureCredential();
const blobServiceClient = new BlobServiceClient(
`https://${account}.blob.core.windows.net`,
defaultAzureCredential
);
Ejemplo de uso de un nombre o clave de cuenta:
const account = "<storage account name>"
const sharedKeyCredential = new StorageSharedKeyCredential(account, "<account key>");
const blobServiceClient = new BlobServiceClient(
`https://${account}.blob.core.windows.net`,
sharedKeyCredential
);
Detalles de las propiedades heredadas
accountName
accountName: string
Valor de propiedad
string
Heredado de StorageClient.accountName
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
Heredado de StorageClient.credential
url
Valor de cadena de dirección URL codificada.
url: string
Valor de propiedad
string
Heredado de StorageClient.url
Detalles del método
createContainer(string, ContainerCreateOptions)
Cree un contenedor de blobs.
Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/create-container.
function createContainer(containerName: string, options?: ContainerCreateOptions): Promise<{ containerClient: ContainerClient, containerCreateResponse: ContainerCreateResponse }>
Parámetros
- containerName
-
string
Nombre del contenedor que se va a crear.
- options
- ContainerCreateOptions
Opciones para configurar la operación De creación de contenedor.
Devoluciones
Promise<{ containerClient: ContainerClient, containerCreateResponse: ContainerCreateResponse }>
Respuesta de creación de contenedores y el cliente de contenedor correspondiente.
deleteContainer(string, ContainerDeleteMethodOptions)
Elimina un contenedor de blobs.
function deleteContainer(containerName: string, options?: ContainerDeleteMethodOptions): Promise<ContainerDeleteResponse>
Parámetros
- containerName
-
string
Nombre del contenedor que se va a eliminar.
- options
- ContainerDeleteMethodOptions
Opciones para configurar la operación de eliminación de contenedor.
Devoluciones
Promise<ContainerDeleteResponse>
Respuesta de eliminación de contenedores.
findBlobsByTags(string, ServiceFindBlobByTagsOptions)
Devuelve un iterador asincrónico para buscar todos los blobs con la etiqueta especificada en la cuenta especificada.
.byPage() devuelve un iterador asincrónico para enumerar los blobs de las páginas.
Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties.
Ejemplo de uso de for await
la sintaxis:
let i = 1;
for await (const blob of blobServiceClient.findBlobsByTags("tagkey='tagvalue'")) {
console.log(`Blob ${i++}: ${container.name}`);
}
Ejemplo con iter.next()
:
let i = 1;
const iter = blobServiceClient.findBlobsByTags("tagkey='tagvalue'");
let blobItem = await iter.next();
while (!blobItem.done) {
console.log(`Blob ${i++}: ${blobItem.value.name}`);
blobItem = await iter.next();
}
Ejemplo con byPage()
:
// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of blobServiceClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 20 })) {
if (response.blobs) {
for (const blob of response.blobs) {
console.log(`Blob ${i++}: ${blob.name}`);
}
}
}
Ejemplo de uso de paginación con un marcador:
let i = 1;
let iterator = blobServiceClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;
// Prints 2 blob names
if (response.blobs) {
for (const blob of response.blobs) {
console.log(`Blob ${i++}: ${blob.name}`);
}
}
// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = blobServiceClient
.findBlobsByTags("tagkey='tagvalue'")
.byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;
// Prints blob names
if (response.blobs) {
for (const blob of response.blobs) {
console.log(`Blob ${i++}: ${blob.name}`);
}
}
function findBlobsByTags(tagFilterSqlExpression: string, options?: ServiceFindBlobByTagsOptions): PagedAsyncIterableIterator<FilterBlobItem, ServiceFindBlobsByTagsSegmentResponse, PageSettings>
Parámetros
- tagFilterSqlExpression
-
string
El parámetro where permite al autor de la llamada consultar blobs cuyas etiquetas coinciden con una expresión determinada. La expresión especificada debe evaluarse como true para que se devuelva un blob en los resultados. La regla de sintaxis de filtro[OData - ABNF] define la gramática formal para el valor del parámetro de consulta where; sin embargo, solo se admite un subconjunto de la sintaxis de filtro de OData en Blob service.
- options
- ServiceFindBlobByTagsOptions
Opciones para buscar blobs por etiquetas.
Devoluciones
fromConnectionString(string, StoragePipelineOptions)
Crea una instancia de BlobServiceClient a partir de la cadena de conexión.
static function fromConnectionString(connectionString: string, options?: StoragePipelineOptions): BlobServiceClient
Parámetros
- connectionString
-
string
Cadena de conexión de la cuenta o una cadena de conexión 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
- options
- StoragePipelineOptions
Opcional. Opciones para configurar la canalización HTTP.
Devoluciones
generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)
Solo está disponible para BlobServiceClient construido con una credencial de clave compartida.
Genera un URI de firma de acceso compartido (SAS) de una cuenta de blob basada en las propiedades y parámetros del cliente pasados. La SAS está firmada por la credencial de clave compartida del cliente.
Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas.
function generateAccountSasUrl(expiresOn?: Date, permissions?: AccountSASPermissions, resourceTypes?: string, options?: ServiceGenerateAccountSasUrlOptions): string
Parámetros
- expiresOn
-
Date
Opcional. Hora en la que la firma de acceso compartido deja de ser válida. El valor predeterminado es una hora más tarde si no se proporciona.
- permissions
- AccountSASPermissions
Especifica la lista de permisos que se van a asociar a la SAS.
- resourceTypes
-
string
Especifica los tipos de recursos asociados a la firma de acceso compartido.
Parámetros opcionales.
Devoluciones
string
Un URI de SAS de cuenta que consta del URI al recurso representado por este cliente, seguido del token de SAS generado.
getAccountInfo(ServiceGetAccountInfoOptions)
La operación Obtener información de la cuenta devuelve el nombre de SKU y el tipo de cuenta de la cuenta especificada. La operación Obtener información de la cuenta está disponible en las versiones de servicio a partir de la versión 2018-03-28.
Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-account-information.
function getAccountInfo(options?: ServiceGetAccountInfoOptions): Promise<ServiceGetAccountInfoResponse>
Parámetros
- options
- ServiceGetAccountInfoOptions
Opciones para la operación Obtener información de la cuenta de servicio.
Devoluciones
Promise<ServiceGetAccountInfoResponse>
Datos de respuesta para la operación Obtener información de la cuenta de servicio.
getBlobBatchClient()
Crea un objeto BlobBatchClient para realizar operaciones por lotes.
Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/blob-batch.
function getBlobBatchClient(): BlobBatchClient
Devoluciones
Nuevo objeto BlobBatchClient para este servicio.
getContainerClient(string)
Crea un objeto ContainerClient
function getContainerClient(containerName: string): ContainerClient
Parámetros
- containerName
-
string
Un nombre de contenedor
Devoluciones
Nuevo objeto ContainerClient para el nombre de contenedor especificado.
Ejemplo de uso:
const containerClient = blobServiceClient.getContainerClient("<container name>");
getProperties(ServiceGetPropertiesOptions)
Obtiene las propiedades de blob service de una cuenta de almacenamiento, incluidas las propiedades de las reglas de Storage Analytics y CORS (uso compartido de recursos entre orígenes).
Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties.
function getProperties(options?: ServiceGetPropertiesOptions): Promise<ServiceGetPropertiesResponse>
Parámetros
- options
- ServiceGetPropertiesOptions
Opciones para la operación Obtener propiedades del servicio.
Devoluciones
Promise<ServiceGetPropertiesResponse>
Datos de respuesta para la operación Obtener propiedades del servicio.
getStatistics(ServiceGetStatisticsOptions)
Recupera las estadísticas relacionadas con la replicación para el servicio Blob. Solo está disponible en el extremo de ubicación secundario cuando está habilitada la replicación con redundancia geográfica con acceso de lectura para la cuenta de almacenamiento.
Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-stats.
function getStatistics(options?: ServiceGetStatisticsOptions): Promise<ServiceGetStatisticsResponse>
Parámetros
- options
- ServiceGetStatisticsOptions
Opciones para la operación Obtener estadísticas del servicio.
Devoluciones
Promise<ServiceGetStatisticsResponse>
Datos de respuesta para la operación Obtener estadísticas del servicio.
getUserDelegationKey(Date, Date, ServiceGetUserDelegationKeyOptions)
SOLO ESTÁ DISPONIBLE CUANDO SE USA LA AUTENTICACIÓN DE TOKEN DE PORTADOR (TokenCredential).
Recupera una clave de delegación de usuarios para Blob Service. Solo se trata de una operación válida cuando se usa la autenticación de token de portador.
Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key.
function getUserDelegationKey(startsOn: Date, expiresOn: Date, options?: ServiceGetUserDelegationKeyOptions): Promise<ServiceGetUserDelegationKeyResponse>
Parámetros
- startsOn
-
Date
Hora de inicio de la SAS de delegación de usuarios. Debe estar en un plazo de 7 días a partir de la hora actual.
- expiresOn
-
Date
Hora de finalización de la SAS de delegación de usuarios. Debe estar en un plazo de 7 días a partir de la hora actual.
Devoluciones
Promise<ServiceGetUserDelegationKeyResponse>
listContainers(ServiceListContainersOptions)
Devuelve un iterador asincrónico para enumerar todos los contenedores de la cuenta especificada.
.byPage() devuelve un iterador asincrónico para enumerar los contenedores de las páginas.
Ejemplo de uso de for await
la sintaxis:
let i = 1;
for await (const container of blobServiceClient.listContainers()) {
console.log(`Container ${i++}: ${container.name}`);
}
Ejemplo con iter.next()
:
let i = 1;
const iter = blobServiceClient.listContainers();
let containerItem = await iter.next();
while (!containerItem.done) {
console.log(`Container ${i++}: ${containerItem.value.name}`);
containerItem = await iter.next();
}
Ejemplo con byPage()
:
// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of blobServiceClient.listContainers().byPage({ maxPageSize: 20 })) {
if (response.containerItems) {
for (const container of response.containerItems) {
console.log(`Container ${i++}: ${container.name}`);
}
}
}
Ejemplo de uso de paginación con un marcador:
let i = 1;
let iterator = blobServiceClient.listContainers().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;
// Prints 2 container names
if (response.containerItems) {
for (const container of response.containerItems) {
console.log(`Container ${i++}: ${container.name}`);
}
}
// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = blobServiceClient
.listContainers()
.byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;
// Prints 10 container names
if (response.containerItems) {
for (const container of response.containerItems) {
console.log(`Container ${i++}: ${container.name}`);
}
}
function listContainers(options?: ServiceListContainersOptions): PagedAsyncIterableIterator<ContainerItem, ServiceListContainersSegmentResponse, PageSettings>
Parámetros
- options
- ServiceListContainersOptions
Opciones para enumerar contenedores.
Devoluciones
AsyncIterableIterator que admite la paginación.
setProperties(BlobServiceProperties, ServiceSetPropertiesOptions)
Establece las propiedades para el punto de conexión de Blob Service de una cuenta de almacenamiento, incluidas las propiedades para Storage Analytics, las reglas cors (uso compartido de recursos entre orígenes) y la configuración de eliminación temporal.
Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties.
function setProperties(properties: BlobServiceProperties, options?: ServiceSetPropertiesOptions): Promise<ServiceSetPropertiesResponse>
Parámetros
- properties
- BlobServiceProperties
- options
- ServiceSetPropertiesOptions
Opciones de la operación Propiedades del conjunto de servicios.
Devoluciones
Promise<ServiceSetPropertiesResponse>
Datos de respuesta para la operación Propiedades del conjunto de servicios.
undeleteContainer(string, string, ServiceUndeleteContainerOptions)
Restaure un contenedor de blobs eliminado anteriormente. Esta API solo es funcional si la eliminación temporal del contenedor está habilitada para la cuenta de almacenamiento asociada al contenedor.
function undeleteContainer(deletedContainerName: string, deletedContainerVersion: string, options?: ServiceUndeleteContainerOptions): Promise<{ containerClient: ContainerClient, containerUndeleteResponse: ContainerUndeleteResponse }>
Parámetros
- deletedContainerName
-
string
Nombre del contenedor eliminado anteriormente.
- deletedContainerVersion
-
string
Versión del contenedor eliminado anteriormente, que se usa para identificar de forma única el contenedor eliminado.
- options
- ServiceUndeleteContainerOptions
Opciones para configurar la operación de restauración de contenedores.
Devoluciones
Promise<{ containerClient: ContainerClient, containerUndeleteResponse: ContainerUndeleteResponse }>
Respuesta de eliminación de contenedores.