Partilhar via


BlobChangeFeedClient class

Construtores

BlobChangeFeedClient(string, Pipeline)

Cria uma instância de BlobChangeFeedClient.

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

Cria uma instância de BlobChangeFeedClient.

Métodos

fromConnectionString(string, StoragePipelineOptions, BlobChangeFeedClientOptions)

Cria uma instância de BlobChangeFeedClient a partir da cadeia de ligação.

listChanges(BlobChangeFeedListChangesOptions)

Devolve um iterador iterável assíncrono para listar todos os eventos do feed de alterações na conta especificada.

.byPage() devolve um iterador iterável assíncrono para listar os eventos do feed de alterações em páginas.

Exemplo com for await sintaxe:

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

Exemplo com 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();
}

Exemplo com 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}`);
    }
  }
}

Exemplo a utilizar a paginação com um 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}`);
  }
}

Detalhes do Construtor

BlobChangeFeedClient(string, Pipeline)

Cria uma instância de BlobChangeFeedClient.

new BlobChangeFeedClient(url: string, pipeline: Pipeline)

Parâmetros

url

string

Uma cadeia de carateres do Cliente a apontar para o serviço de blobs do Armazenamento do Microsoft Azure, como "https://myaccount.blob.core.windows.net". Pode acrescentar uma SAS se utilizar AnonymousCredential, como "https://myaccount.blob.core.windows.net?sasString".

pipeline
Pipeline

Chame newPipeline() para criar um pipeline predefinido ou forneça um pipeline personalizado.

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

Cria uma instância de BlobChangeFeedClient.

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

Parâmetros

url

string

Uma cadeia de carateres do Cliente a apontar para o serviço de blobs do Armazenamento do Microsoft Azure, como "https://myaccount.blob.core.windows.net". Pode acrescentar uma SAS se utilizar AnonymousCredential, como "https://myaccount.blob.core.windows.net?sasString".

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Tal como AnonymousCredential, StorageSharedKeyCredential ou qualquer credencial do @azure/identity pacote para autenticar pedidos para o serviço. Também pode fornecer um objeto que implementa a interface TokenCredential. Se não for especificado, é utilizado AnonymousCredential.

options
StoragePipelineOptions

Opcional. Opções para configurar o pipeline HTTP.

Exemplo a utilizar DefaultAzureCredential a partir de @azure/identity:

const account = "<storage account name>";

const defaultAzureCredential = new DefaultAzureCredential();

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

Exemplo com um nome/chave de conta:

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

Detalhes de Método

fromConnectionString(string, StoragePipelineOptions, BlobChangeFeedClientOptions)

Cria uma instância de BlobChangeFeedClient a partir da cadeia de ligação.

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

Parâmetros

connectionString

string

Cadeia de ligação de conta ou uma cadeia de ligação SAS de uma conta de armazenamento do Azure. [ Nota - a cadeia de ligação da conta só pode ser utilizada no NODE.JS runtime. ] Exemplo de cadeia de ligação de conta - DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net Exemplo de cadeia de ligação 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. Opções para configurar o pipeline HTTP.

changeFeedClientOptions
BlobChangeFeedClientOptions

Devoluções

listChanges(BlobChangeFeedListChangesOptions)

Devolve um iterador iterável assíncrono para listar todos os eventos do feed de alterações na conta especificada.

.byPage() devolve um iterador iterável assíncrono para listar os eventos do feed de alterações em páginas.

Exemplo com for await sintaxe:

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

Exemplo com 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();
}

Exemplo com 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}`);
    }
  }
}

Exemplo a utilizar a paginação com um 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

Opções para listar eventos do feed de alterações.

Devoluções

Um asyncIterableIterator que suporta paginação.