Compartir a través de


BlobChangeFeedClient class

Constructores

BlobChangeFeedClient(string, Pipeline)

Crea una instancia de BlobChangeFeedClient.

BlobChangeFeedClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions, BlobChangeFeedClientOptions)

Crea una instancia de BlobChangeFeedClient.

Métodos

fromConnectionString(string, StoragePipelineOptions, BlobChangeFeedClientOptions)

Crea una instancia de BlobChangeFeedClient a partir de la cadena de conexión.

listChanges(BlobChangeFeedListChangesOptions)

Devuelve un iterador asincrónico para enumerar todos los eventos de fuente de cambios de la cuenta especificada.

.byPage() devuelve un iterador iterable asincrónico para enumerar los eventos de fuente de cambios en páginas.

Ejemplo de uso de la sintaxis de for await:

let i = 1;
for await (const event of blobChangeFeedClient.listChanges()) {
  console.log(`Event ${i++}, type: ${event.eventType}`);
}

Ejemplo de uso de iter.next():

let i = 1;
const iter = blobChangeFeedClient.listChanges();
let eventItem = await iter.next();
while (!eventItem.done) {
  console.log(`Event ${i++}, type: ${eventItem.eventType}`);
  eventItem = await iter.next();
}

Ejemplo de uso de byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const eventPage of blobChangeFeedClient.listChanges().byPage({ maxPageSize: 20 })) {
  if (eventPage.events) {
    for (const event of eventPage.events) {
      console.log(`Event ${i++}, type: ${event.eventType}`);
    }
  }
}

Ejemplo de uso de paginación con un marcador:

let i = 1;
let iterator = blobChangeFeedClient.listChanges().byPage({ maxPageSize: 2 });
let eventPage = (await iterator.next()).value;

if (eventPage.events) {
  for (const container of eventPage.events) {
    console.log(`Event ${i++}, type: ${event.eventType}`);
  }
}

// Gets next marker
let marker = eventPage.continuationToken;
// Passing next marker as continuationToken
iterator = blobChangeFeedClient
  .listChanges()
  .byPage({ continuationToken: marker, maxPageSize: 10 });
eventPage = (await iterator.next()).value;

if (eventPage.events) {
  for (const container of eventPage.events) {
     console.log(`Event ${i++}, type: ${event.eventType}`);
  }
}

Detalles del constructor

BlobChangeFeedClient(string, Pipeline)

Crea una instancia de BlobChangeFeedClient.

new BlobChangeFeedClient(url: string, pipeline: Pipeline)

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
Pipeline

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

BlobChangeFeedClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions, BlobChangeFeedClientOptions)

Crea una instancia de BlobChangeFeedClient.

new BlobChangeFeedClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions, changeFeedClientOptions?: BlobChangeFeedClientOptions)

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 paquete de @azure/identity para autenticar las solicitudes al 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 blobChangeFeedClient = new BlobChangeFeedClient(
  `https://${account}.blob.core.windows.net`,
  defaultAzureCredential
);

Ejemplo con un nombre o clave de cuenta:

const account = "<storage account name>"
const sharedKeyCredential = new StorageSharedKeyCredential(account, "<account key>");

const blobChangeFeedClient = new BlobChangeFeedClient(
  `https://${account}.blob.core.windows.net`,
  sharedKeyCredential
);
changeFeedClientOptions
BlobChangeFeedClientOptions

Detalles del método

fromConnectionString(string, StoragePipelineOptions, BlobChangeFeedClientOptions)

Crea una instancia de BlobChangeFeedClient a partir de la cadena de conexión.

static function fromConnectionString(connectionString: string, options?: StoragePipelineOptions, changeFeedClientOptions?: BlobChangeFeedClientOptions): BlobChangeFeedClient

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: ejemplo de cadena de conexión saS de DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net: 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.

changeFeedClientOptions
BlobChangeFeedClientOptions

Devoluciones

listChanges(BlobChangeFeedListChangesOptions)

Devuelve un iterador asincrónico para enumerar todos los eventos de fuente de cambios de la cuenta especificada.

.byPage() devuelve un iterador iterable asincrónico para enumerar los eventos de fuente de cambios en páginas.

Ejemplo de uso de la sintaxis de for await:

let i = 1;
for await (const event of blobChangeFeedClient.listChanges()) {
  console.log(`Event ${i++}, type: ${event.eventType}`);
}

Ejemplo de uso de iter.next():

let i = 1;
const iter = blobChangeFeedClient.listChanges();
let eventItem = await iter.next();
while (!eventItem.done) {
  console.log(`Event ${i++}, type: ${eventItem.eventType}`);
  eventItem = await iter.next();
}

Ejemplo de uso de byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const eventPage of blobChangeFeedClient.listChanges().byPage({ maxPageSize: 20 })) {
  if (eventPage.events) {
    for (const event of eventPage.events) {
      console.log(`Event ${i++}, type: ${event.eventType}`);
    }
  }
}

Ejemplo de uso de paginación con un marcador:

let i = 1;
let iterator = blobChangeFeedClient.listChanges().byPage({ maxPageSize: 2 });
let eventPage = (await iterator.next()).value;

if (eventPage.events) {
  for (const container of eventPage.events) {
    console.log(`Event ${i++}, type: ${event.eventType}`);
  }
}

// Gets next marker
let marker = eventPage.continuationToken;
// Passing next marker as continuationToken
iterator = blobChangeFeedClient
  .listChanges()
  .byPage({ continuationToken: marker, maxPageSize: 10 });
eventPage = (await iterator.next()).value;

if (eventPage.events) {
  for (const container of eventPage.events) {
     console.log(`Event ${i++}, type: ${event.eventType}`);
  }
}
function listChanges(options?: BlobChangeFeedListChangesOptions): PagedAsyncIterableIterator<BlobChangeFeedEvent, BlobChangeFeedEventPage, PageSettings>

Parámetros

options
BlobChangeFeedListChangesOptions

Opciones para enumerar eventos de fuente de cambios.

Devoluciones

AsyncIterableIterator que admite la paginación.