Поделиться через


BlobChangeFeedClient class

Конструкторы

BlobChangeFeedClient(string, Pipeline)

Создает экземпляр BlobChangeFeedClient.

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

Создает экземпляр BlobChangeFeedClient.

Методы

fromConnectionString(string, StoragePipelineOptions, BlobChangeFeedClientOptions)

Создает экземпляр BlobChangeFeedClient из строки подключения.

listChanges(BlobChangeFeedListChangesOptions)

Возвращает асинхронный итератор для перечисления всех событий канала изменений в указанной учетной записи.

.byPage() возвращает асинхронный итератор для перечисления событий канала изменений на страницах.

Пример использования for await синтаксиса:

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

Пример, использующий среду 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();
}

Пример, использующий среду 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}`);
    }
  }
}

Пример использования разбиения по страницам с маркером:

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

Сведения о конструкторе

BlobChangeFeedClient(string, Pipeline)

Создает экземпляр BlobChangeFeedClient.

new BlobChangeFeedClient(url: string, pipeline: Pipeline)

Параметры

url

string

Строка клиента, указывающая на службу BLOB-объектов службы хранилища Azure, например "https://myaccount.blob.core.windows.net"". Вы можете добавить SAS при использовании AnonymousCredential, например "https://myaccount.blob.core.windows.net?sasString"".

pipeline
Pipeline

Вызовите newPipeline() для создания конвейера по умолчанию или предоставления настраиваемого конвейера.

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

Создает экземпляр BlobChangeFeedClient.

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

Параметры

url

string

Строка клиента, указывающая на службу BLOB-объектов службы хранилища Azure, например "https://myaccount.blob.core.windows.net"". Вы можете добавить SAS при использовании AnonymousCredential, например "https://myaccount.blob.core.windows.net?sasString"".

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Например, AnonymousCredential, StorageSharedKeyCredential или любые учетные @azure/identity данные из пакета для проверки подлинности запросов к службе. Можно также предоставить объект , реализующий интерфейс TokenCredential. Если значение не указано, используется AnonymousCredential.

options
StoragePipelineOptions

Необязательный элемент. Параметры для настройки конвейера HTTP.

Пример использования DefaultAzureCredential из @azure/identity:

const account = "<storage account name>";

const defaultAzureCredential = new DefaultAzureCredential();

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

Пример использования имени или ключа учетной записи:

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

Сведения о методе

fromConnectionString(string, StoragePipelineOptions, BlobChangeFeedClientOptions)

Создает экземпляр BlobChangeFeedClient из строки подключения.

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

Параметры

connectionString

string

Строка подключения к учетной записи или строка подключения SAS учетной записи хранения Azure. [ Примечание. Строка подключения учетной записи может использоваться только в NODE.JS среде выполнения. ] Пример строки подключения учетной записи —DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net Пример строки подключения 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

Необязательный элемент. Параметры для настройки конвейера HTTP.

changeFeedClientOptions
BlobChangeFeedClientOptions

Возвращаемое значение

listChanges(BlobChangeFeedListChangesOptions)

Возвращает асинхронный итератор для перечисления всех событий канала изменений в указанной учетной записи.

.byPage() возвращает асинхронный итератор для перечисления событий канала изменений на страницах.

Пример использования for await синтаксиса:

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

Пример, использующий среду 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();
}

Пример, использующий среду 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}`);
    }
  }
}

Пример использования разбиения по страницам с маркером:

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>

Параметры

options
BlobChangeFeedListChangesOptions

Параметры для перечисления событий канала изменений.

Возвращаемое значение

AsyncIterableIterator, поддерживающий разбиение по страницам.