Wachten
VAN TOEPASSING OP: Alle API Management-lagen
Het wait
beleid voert de onmiddellijke onderliggende beleidsregels parallel uit en wacht tot alle of een van de directe onderliggende beleidsregels is voltooid voordat het is voltooid. Het wait
beleid kan een of meer van de volgende onderliggende beleidsregels hebben: send-request
, cache-lookup-value
en choose
beleidsregels.
Notitie
Stel de elementen en onderliggende elementen van het beleid in de volgorde in die in de beleidsverklaring is opgegeven. Meer informatie over het instellen of bewerken van API Management-beleid.
Beleidsinstructie
<wait for="all | any">
<!--Wait policy can contain send-request, cache-lookup-value,
and choose policies as child elements -->
</wait>
Kenmerken
Kenmerk | Beschrijving | Vereist | Standaardinstelling |
---|---|---|---|
voor | Bepaalt of het wait beleid wacht totdat alle onmiddellijke onderliggende beleidsregels zijn voltooid of slechts één. Toegestane waarden zijn:- all - wacht totdat alle onmiddellijke onderliggende beleidsregels zijn voltooid- any - wacht tot het onmiddellijke onderliggende beleid is voltooid. Zodra het eerste onderliggende beleid is voltooid, wordt het beleid voltooid en wordt het wait uitvoeren van andere directe onderliggende beleidsregels beëindigd.Beleidsexpressies zijn toegestaan. |
Nee | all |
Elementen
Mag alleen send-request
onderliggende elementen bevatten, cache-lookup-value
en choose
beleidsregels.
Gebruik
- Beleidssecties: binnenkomend, uitgaand, back-end
- Beleidsbereik: globaal, werkruimte, product, API, bewerking
- Gateways: klassiek, v2, verbruik, zelf-hostend, werkruimte
Opmerking
In het volgende voorbeeld zijn er twee choose
beleidsregels als direct onderliggend beleid van het wait
beleid. Elk van deze choose
beleidsregels wordt parallel uitgevoerd. Elk choose
beleid probeert een waarde in de cache op te halen. Als er een cache ontbreekt, wordt een back-endservice aangeroepen om de waarde op te geven. In dit voorbeeld wordt het wait
beleid pas voltooid als alle onderliggende beleidsregels zijn voltooid, omdat het for
kenmerk is ingesteld op all
. In dit voorbeeld worden de contextvariabelen (execute-branch-one
, value-one
, execute-branch-two
en value-two
) buiten het bereik van dit voorbeeldbeleid gedeclareerd.
<wait for="all">
<choose>
<when condition="@((bool)context.Variables["execute-branch-one="])">
<cache-lookup-value key="key-one" variable-name="value-one" />
<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" />
<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>
Gerelateerd beleid
Gerelateerde inhoud
Zie voor meer informatie over het werken met beleid:
- Zelfstudie: Uw API transformeren en beveiligen
- Beleidsreferentie voor een volledige lijst met beleidsinstructies en hun instellingen
- Beleidsexpressies
- Beleid instellen of bewerken
- Beleidsconfiguraties opnieuw gebruiken
- Beleidsfragmentenopslagplaats
- Azure API Management-beleidstoolkit
- Beleid ontwerpen met Behulp van Microsoft Copilot in Azure