Azure Core LRO Client Library for JavaScript - Version 3.4.0

Dies ist die Standardimplementierung von Vorgängen mit langer Ausführung in JavaScript-Clientbibliotheken des Azure SDK, die sowohl im Browser als auch in NodeJS funktionieren. Diese Bibliothek ist hauptsächlich dafür gedacht, in Code verwendet zu werden, der vom TypeSpec-Emitter@azure-tools/typespec-ts generiert wird.

@azure/core-lro folgt den Azure SDK-Entwurfsrichtlinien für lange ausgeführte Vorgänge

Wichtige Links:

Erste Schritte

Derzeit unterstützte Umgebungen

Installation

Dieses Paket wird in erster Linie in generierten Code verwendet und sollte nicht direkt von Endbenutzern genutzt werden.

Wichtige Begriffe

PollerLike

Ein Poller ist ein Objekt, mit dem der lange ausgeführte Vorgang auf dem Server abgerufen werden kann, bis er einen Terminalstatus erreicht. Es verlängert Promise<TResult>auch , sodass du es direkt erreichen await kannst, um das Endergebnis zu erhalten. Er bietet Folgendes:

  • operationState: eine Eigenschaft, die den aktuellen Zustand der Operation zurückgibt, typisiert als ein Typ, der erweitert OperationState. Es gilt, undefined wenn der Poller noch nicht eingereicht wurde.
  • result: eine Eigenschaft, die das Ergebnis der Operation zurückgibt, wenn sie abgeschlossen ist und undefined andernfalls
  • isDone: eine Eigenschaft, die zurückgibt, ob die Operation sich im terminalen Zustand befindet
  • onProgress: registriert Rückruffunktionen, die jedes Mal aufgerufen werden, wenn eine Abrufantwort empfangen wird
  • poll: sendet eine einzelne Abfrageanforderung.
  • pollUntilDone: gibt eine Zusage zurück, die mit dem Ergebnis des Vorgangs aufgelöst wird.
  • serialize: gibt ein Versprechen zurück, das auf eine serialisierte Darstellung des Zustands des Pollers aufgelöst wird
  • submitted: gibt ein Versprechen zurück, das aufgelöst wird, wenn der Poller erfolgreich eingereicht wurde

OperationState

Ein Typ für den Vorgangszustand. Es enthält ein status Feld mit den folgenden möglichen Werten: notStarted, , running, , succeeded, failedund canceled. Auf sie kann wie folgt zugegriffen werden:

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

Eine Funktion, die ein Objekt vom Typ PollerLikezurückgibt. Dieser Poller verhält sich im Vorhandensein von Fehlern wie folgt:

  • Aufrufe an poll und pollUntilDone lösen einen Fehler aus, falls der Vorgang fehlgeschlagen oder abgebrochen wurde, es sei denn, die resolveOnUnsuccessful Option wurde auf "true" festgelegt.
  • poller.operationState?.status wird auf "failed" gesetzt oder "canceled" wenn entweder die Operation fehlschlägt oder eine Fehlerantwort zurückgegeben wird.

Beispiele

Beispiele finden Sie im Ordner samples.

Problembehandlung

Protokollierung

Protokolle können nach Eigenem Ermessen der Bibliothek hinzugefügt werden, die den Abrufvorgang "Long Running Operation" implementiert. Pakete innerhalb von azure-sdk-for-js verwenden @azure/Logger.

Nächste Schritte

Ausführliche Beispiele zur Verwendung dieser Bibliothek finden Sie in den Beispielen Verzeichnis.

Mitarbeit

Wenn Sie an dieser Bibliothek mitwirken möchten, lesen Sie bitte den mitwirkenden Leitfaden, um mehr über das Erstellen und Testen des Codes zu erfahren.

Testen

Um unsere Tests auszuführen, installieren Sie zuerst die Abhängigkeiten (mit pnpm install) und führen Sie dann die Komponententests mit folgendem aus: pnpm run test:node.

Verhaltenskodex

Dieses Projekt hat den Microsoft Open Source Code of Conductübernommen. Weitere Informationen finden Sie im Code of Conduct FAQ oder wenden Sie sich an opencode@microsoft.com mit weiteren Fragen oder Kommentaren.