Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Detta är standardimplementeringen av tidskrävande åtgärder i Azure SDKs JavaScript-klientbibliotek som fungerar i både webbläsaren och NodeJS. Detta bibliotek är främst avsett att användas i kod som genereras av TypeSpec-emittern@azure-tools/typespec-ts .
@azure/core-lro följer Azure SDKs:s designriktlinjer för tidskrävande åtgärder
Nyckellänkar:
Komma igång
Miljöer som stöds för närvarande
- LTS-versioner av Node.js
- De senaste versionerna av Safari, Chrome, Edge och Firefox.
Installation
Det här paketet används främst i genererad kod och är inte avsett att användas direkt av slutanvändare.
Viktiga begrepp
PollerLike
En poller är ett objekt som kan avsöka den tidskrävande åtgärden på servern för dess tillstånd tills den når ett terminaltillstånd. Den förlänger Promise<TResult>också , så du kan await direkt för att få slutresultatet. Den innehåller följande:
-
operationState: en egenskap som returnerar operationens aktuella tillstånd, typad som en typ som utvidgarOperationState. Det är omundefinedpollern ännu inte har skickats in. -
result: en egenskap som returnerar resultatet av operationen när den är fullbordad ochundefinedannars -
isDone: en egenskap som returnerar om operationen är i ett terminalt tillstånd -
onProgress: registrerar återanropsfunktioner som ska anropas varje gång ett avsökningssvar tas emot -
poll: skickar en enda avsökningsbegäran -
pollUntilDone: returnerar ett löfte som kommer att lösas med resultatet av åtgärden -
serialize: returnerar ett löfte som löser sig till en serialiserad representation av pollerens tillstånd -
submitted: returnerar ett löfte som löses när pollern har skickats in framgångsrikt
OperationState
En typ för åtgärdstillståndet. Det innehåller ett status fält med följande möjliga värden: notStarted, running, succeeded, failed, och canceled. Den kan nås på följande sätt:
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
En funktion som returnerar ett objekt av typen PollerLike. Den här pollern beter sig så här i närvaro av fel:
- anropar till
pollochpollUntilDoneutlöser ett fel om åtgärden har misslyckats eller avbrutits såvida interesolveOnUnsuccessfulalternativet har angetts till sant. -
poller.operationState?.statuskommer att sättas till"failed"eller"canceled"när antingen operationen misslyckas eller returnerar ett felsvar.
Exempel
Exempel finns i mappen samples.
Felsökning
Loggning / Skogsavverkning
Loggar kan läggas till efter eget gottfinnande för biblioteket som implementerar den tidskrävande åtgärden poller. Paket i azure-sdk-for-js använder @azure/logger.
Nästa steg
Ta en titt på exempel katalog för detaljerade exempel på hur du använder det här biblioteket.
Bidrag
Om du vill bidra till det här biblioteket kan du läsa bidragsguide för att lära dig mer om hur du skapar och testar koden.
Testa
Om du vill köra våra tester installerar du först beroendena (med pnpm install) och kör sedan enhetstesterna med: pnpm run test:node.
Uppförandekod
Det här projektet har antagit Microsoft Open Source Code of Conduct. Mer information finns i vanliga frågor och svar om uppförandekod eller kontakta opencode@microsoft.com med ytterligare frågor eller kommentarer.
Azure SDK for JavaScript