Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Jest to domyślna implementacja długotrwałych operacji w bibliotekach klienta javaScript zestawu Azure SDK, które działają zarówno w przeglądarce, jak i w środowisku NodeJS. Ta biblioteka jest przede wszystkim przeznaczona do użycia w kodzie generowanym przez emiter TypeSpec@azure-tools/typespec-ts .
@azure/core-lro postępuje zgodnie z wytycznymi dotyczącymi projektowania zestawu Azure SDK dla długotrwałych operacji
Kluczowe linki:
- kod źródłowy
- Pakiet (npm)
- Dokumentacja referencyjna interfejsu API
- Próbki
Wprowadzenie
Obecnie obsługiwane środowiska
- Wersje LTS Node.js
- Najnowsze wersje przeglądarek Safari, Chrome, Edge i Firefox.
Instalacja
Ten pakiet jest używany głównie w generowanym kodzie i nie jest przeznaczony do bezpośredniego użycia przez użytkowników końcowych.
Najważniejsze pojęcia
PollerLike
Poller jest obiektem, który może sondować długotrwałą operację na serwerze pod kątem jego stanu, dopóki nie osiągnie stanu terminalu. Rozszerza Promise<TResult>się też , więc możesz await to zrobić bezpośrednio, aby uzyskać ostateczny efekt. Udostępnia on następujące elementy:
-
operationState: własność zwracająca aktualny stan operacji, typowana jako typ rozszerzającyOperationState. Jestundefinedtak, jeśli ankieta nie została jeszcze złożona. -
result: właściwość, która zwraca wynik operacji po jej zakończeniu iundefinedw przeciwnym razie -
isDone: właściwość zwracająca, czy operacja znajduje się w stanie końcowym -
onProgress: rejestruje funkcje wywołania zwrotnego, które mają być wywoływane za każdym razem, gdy zostanie odebrana odpowiedź sondowania -
poll: wysyła jedno żądanie sondowania -
pollUntilDone: zwraca obietnicę, która zostanie rozwiązana z wynikiem operacji -
serialize: zwraca obietnicę, która rozwiązuje się do serializowanej reprezentacji stanu Pollera -
submitted: zwraca obietnicę, która rozstrzyga się po pomyślnym przesłaniu zapytania
OperationState
Typ stanu operacji. Zawiera status pole z następującymi możliwymi wartościami: notStarted, , runningsucceeded, failedi canceled. Dostęp do niego można uzyskać w następujący sposób:
switch (poller.operationState?.status) {
case "succeeded": // return poller.result;
case "failed": // throw poller.operationState?.error;
case "canceled": // throw new Error("Operation was canceled");
case "running": // ...
case "notStarted": // ...
}
createHttpPoller
Funkcja zwracająca obiekt typu PollerLike. Ten element poller zachowuje się w następujący sposób w obecności błędów:
- wywołania metody
pollipollUntilDonewyrzucą błąd w przypadku niepowodzenia lub anulowania operacji, chyba żeresolveOnUnsuccessfulopcja została ustawiona na true. -
poller.operationState?.statuszostanie ustawione na lub"failed""canceled"gdy operacja się nie powiedzie lub zwróci odpowiedź błędu.
Przykłady
Przykłady można znaleźć w folderze samples.
Rozwiązywanie problemów
Przemysł drzewny
Dzienniki można dodawać według uznania biblioteki implementowania narzędzia Long Running Operation poller. Pakiety wewnątrz zestawu azure-sdk-for-js używają @azure/rejestratora.
Następne kroki
Zapoznaj się z przykładami katalogu, aby zapoznać się ze szczegółowymi przykładami dotyczącymi korzystania z tej biblioteki.
Wkład
Jeśli chcesz współtworzyć tę bibliotekę, przeczytaj przewodnik dotyczący współtworzenia , aby dowiedzieć się więcej na temat tworzenia i testowania kodu.
Testowanie
Aby uruchomić nasze testy, najpierw zainstaluj zależności (za pomocą pnpm install), a następnie uruchom testy jednostkowe za pomocą: pnpm run test:node.
Kodeks postępowania
Ten projekt przyjął kodeks postępowania otwartego firmy Microsoft . Aby uzyskać więcej informacji, zobacz Kodeks postępowania — często zadawane pytania lub skontaktuj się z opencode@microsoft.com z dodatkowymi pytaniami lub komentarzami.
Azure SDK for JavaScript