Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
PLATÍ PRO: Všechny úrovně služby API Management
Zásada wait provádí své okamžité podřízené zásady paralelně a čeká na dokončení všech nebo jedné z jejích okamžitých podřízených zásad. Zásada wait může mít jednu nebo více z následujících zásad bezprostředního podřízeného: send-request, cache-lookup-valuea choose zásady.
Poznámka:
Nastavte prvky zásad a podřízené prvky v pořadí uvedeném v prohlášení o zásadách. Přečtěte si další informace o tom, jak nastavit nebo upravit zásady služby API Management.
Prohlášení o zásadách
<wait for="all | any">
<!--Wait policy can contain send-request, cache-lookup-value,
and choose policies as child elements -->
</wait>
Atributy
| Atribut | Popis | Požaduje se | Výchozí |
|---|---|---|---|
| pro | Určuje, jestli wait zásada čeká na dokončení všech okamžitých podřízených zásad, nebo jenom na jednu. Povolené hodnoty jsou následující:- all - počkejte na dokončení všech zásad okamžitého podřízeného- any – počkejte na dokončení jakékoli okamžité podřízené zásady. Jakmile se dokončí první okamžitá podřízená zásada, wait zásada se dokončí a ukončí všechny ostatní okamžité podřízené zásady.Výrazy zásad jsou povolené. |
Ne | all |
Elementy
Může obsahovat pouze send-requestpodřízené prvky , cache-lookup-valuea choose zásady.
Využití
- Oddíly zásad: příchozí, odchozí, back-end
- Obory zásad: globální, pracovní prostor, produkt, rozhraní API, operace
- Brány: Classic, v2, consumption, self-host, workspace
Příklad
V následujícím příkladu existují dvě choose zásady jako okamžité podřízené zásady wait zásady. Každá z těchto choose zásad se provádí paralelně. Každá choose zásada se pokusí načíst hodnotu uloženou v mezipaměti. Pokud dojde k chybě mezipaměti, zavolá se back-endová služba, která tuto hodnotu poskytne. V tomto příkladu wait se zásada nedokončí, dokud se nedokončí všechny jeho okamžité podřízené zásady, protože for atribut je nastaven na all. V tomto příkladu jsou kontextové proměnné (execute-branch-one, value-one, execute-branch-twoa value-two) deklarovány mimo rozsah této ukázkové zásady.
Poznámka:
Po vyhledávání cache přidejte politiku omezení rychlosti (nebo politiku omezení podle klíčů ), která pomůže omezit počet hovorů a zabrání přetížení backendové služby v případě, že cache není dostupná.
<wait for="all">
<choose>
<when condition="@((bool)context.Variables["execute-branch-one="])">
<cache-lookup-value key="key-one" variable-name="value-one" />
<rate-limit calls="10" renewal-period="60" />
<choose>
<when condition="@(!context.Variables.ContainsKey("value-one="))">
<send-request mode="new" response-variable-name="value-one">
<set-url>https://backend-one</set-url>
<set-method>GET</set-method>
</send-request>
</when>
</choose>
</when>
</choose>
<choose>
<when condition="@((bool)context.Variables["execute-branch-two="])">
<cache-lookup-value key="key-two" variable-name="value-two" />
<rate-limit calls="10" renewal-period="60" />
<choose>
<when condition="@(!context.Variables.ContainsKey("value-two="))">
<send-request mode="new" response-variable-name="value-two">
<set-url>https://backend-two</set-url>
<set-method>GET</set-method>
</send-request>
</when>
</choose>
</when>
</choose>
</wait>
Související zásady
Související obsah
Další informace o práci se zásadami najdete v tématech:
- Kurz: Transformace a ochrana rozhraní API
- Referenční informace o zásadách pro úplný seznam prohlášení o zásadách a jejich nastavení
- Výrazy zásad
- Nastavení nebo úprava zásad
- Opakované použití konfigurací zásad
- Úložiště fragmentů zásad
- Úložiště dětského hřiště zásad
- Sada nástrojů zásad služby Azure API Management
- Získejte asistenci Copilotu při vytváření, vysvětlování a řešení problémů se zásadami.