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


Клиентская библиотека Azure Core LRO для JavaScript версии 2.7.2

Это реализация длительных операций по умолчанию в клиентских библиотеках JavaScript пакета Azure SDK, которые работают как в браузере, так и в NodeJS. Эта библиотека в первую очередь предназначена для использования в коде, созданном AutoRest и autorest.typescript.

@azure/core-lro в соответствии с рекомендациями по проектированию пакета Azure SDK для длительных операций

Основные ссылки:

Начало работы

Поддерживаемые в настоящее время среды

Установка

Этот пакет в основном используется в созданном коде и не предназначен для непосредственного использования конечными пользователями.

Основные понятия

SimplePollerLike

Опрашиватель — это объект, который может опрашивать долго выполняющуюся на сервере операцию на предмет ее состояния до тех пор, пока она не достигнет конечного состояния. Он предоставляет следующие методы:

  • getOperationState: возвращает состояние операции, типизированной как тип, расширяющий OperationState
  • getResult: возвращает результат операции после ее завершения и undefined в противном случае.
  • isDone: возвращает значение, указывающее, находится ли операция в состоянии терминала.
  • isStopped: возвращает значение, указывающее, остановлено ли опрос.
  • onProgress: регистрирует функции обратного вызова для вызова при каждом получении ответа опроса.
  • poll: отправляет один запрос опроса.
  • pollUntilDone: возвращает обещание, которое будет разрешаться в результате операции.
  • stopPolling: останавливает опрос;
  • toString: сериализует состояние средства опроса.

OperationState

Тип для состояния операции. Он содержит поле со следующими возможными значениями status : notStarted, running, succeeded, failedи canceled. Доступ к нему можно получить следующим образом:

switch(poller.getOperationState().status) {
  case "succeeded":  // return poller.getResult();
  case "failed":     // throw poller.getOperationState().error;
  case "canceled":   // throw new Error("Operation was canceled");
  case "running":    // ...
  case "notStarted": // ...
}

createHttpPoller

Функция, возвращающая объект типа SimplePollerLike. При наличии ошибок этот опрашиватель ведет себя следующим образом:

  • poll Вызовы и pollUntilDone будут выдавать ошибку в случае сбоя или отмены операции, если resolveOnUnsuccessful для параметра не задано значение true.
  • poller.getOperationState().status Будет задано значение true при сбое операции или при возврате ответа об ошибке.

Примеры

Примеры можно найти в папке samples.

Устранение неполадок

Ведение журнала

Журналы могут добавляться по усмотрению библиотеки, реализуя средство опроса длительных операций. Пакеты в azure-sdk-for-js используют @azure/logger.

Дальнейшие действия

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

Участие

Если вы хотите вносить изменения в эту библиотеку, ознакомьтесь с руководством по внесению изменений, в котором содержатся сведения о создании и тестировании кода.

Тестирование

Чтобы запустить наши тесты, сначала установите зависимости (с npm install или rush install), а затем запустите модульные тесты с помощью: npm run unit-test.

Правила поведения

В рамках этого проекта действуют правила поведения в отношении продуктов с открытым исходным кодом Майкрософт. Дополнительные сведения см. в разделе часто задаваемых вопросов о правилах поведения или обратитесь к opencode@microsoft.com с любыми дополнительными вопросами или комментариями.

Просмотры