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 asincrónico para enumerar los eventos de la fuente de cambios en las páginas.

Ejemplo de uso de for await la sintaxis:

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

Ejemplo con 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 con 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 proporcione 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 @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 blobChangeFeedClient = new BlobChangeFeedClient(
  `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 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 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

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 asincrónico para enumerar los eventos de la fuente de cambios en las páginas.

Ejemplo de uso de for await la sintaxis:

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

Ejemplo con 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 con 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.