Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это реализация длительных операций в клиентских библиотеках JavaScript пакета SDK Azure по умолчанию, которые работают как в браузере, так и в NodeJS. Эта библиотека в основном предназначена для использования в коде, созданном autoRest и autorest.typescript
.
@azure/core-lro
следует рекомендациям по проектированию пакета SDK Azure для длительных операций
Ключевые ссылки:
- исходный код
- Пакет (npm)
- Справочная документация по API
- Образцы
Начало работы
Поддерживаемые в настоящее время среды
- Версии Node.js LTS
- Последние версии Safari, Chrome, Edge и Firefox.
Установка
Этот пакет в основном используется в созданном коде и не предназначен для использования непосредственно конечными пользователями.
Основные понятия
SimplePollerLike
Опрашиватель — это объект, который может опрашивать длинную операцию на сервере до тех пор, пока не достигнет состояния терминала. Он предоставляет следующие методы:
-
getOperationState
: возвращает состояние операции, типизированной как тип, расширяющийсяOperationState
-
getResult
: возвращает результат операции при завершении иundefined
в противном случае -
isDone
: возвращает, находится ли операция в состоянии терминала -
isStopped
: возвращает значение, остановлено ли опрос -
onProgress
: регистрирует функции обратного вызова, которые будут вызываться каждый раз при получении ответа на опрос -
poll
: отправляет один запрос опроса -
pollUntilDone
: возвращает обещание, которое будет разрешаться с результатом операции -
stopPolling
: останавливает опрос; -
toString
: сериализует состояние опрашителя
OperationState
Тип состояния операции. Он содержит поле со следующими возможными status
значениями: notStarted
, running
, , failed
succeeded
и canceled
. Доступ к нему можно получить следующим образом:
switch (poller.operationState.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/loger.
Дальнейшие действия
Ознакомьтесь с примерами каталога, чтобы получить подробные примеры использования этой библиотеки.
Вклад
Если вы хотите внести свой вклад в эту библиотеку, ознакомьтесь с руководством по вкладу, чтобы узнать больше о том, как создавать и тестировать код.
Тестирование
Чтобы выполнить наши тесты, сначала установите зависимости (с npm install
илиrush install
), а затем запустите модульные тесты с помощью: npm run unit-test
Кодекс поведения
Этот проект принял Microsoft Open Source Code of Conduct. Для получения дополнительной информации см. FAQ о кодексе поведения, или свяжитесь с [email protected] по любым дополнительным вопросам или комментариям.
Azure SDK for JavaScript