Kérelem továbbítása

A KÖVETKEZŐRE VONATKOZIK: Minden API Management-szint

A forward-request házirend továbbítja a bejövő kérést a kérelemkörnyezetben megadott háttérszolgáltatásnak. A háttérszolgáltatás URL-címe az API-beállításokban van megadva, és a beállított háttérszolgáltatás-szabályzattal módosítható.

Important

  • Ez a szabályzat a kérések API-háttérrendszernek való továbbításához szükséges. Alapértelmezés szerint az API Management beállítja ezt a szabályzatot a globális hatókörben.
  • A szabályzat eltávolítása azt eredményezi, hogy a kérés nem lesz továbbítva a háttérszolgáltatásnak. A kimenő szakaszban lévő szabályzatokat a rendszer azonnal kiértékeli a bejövő szakaszban lévő szabályzatok sikeres befejezése után.

Note

Állítsa be a szabályzat elemeit és gyermekelemeit a szabályzatutasításban megadott sorrendben. További információ az API Management-szabályzatok beállításáról és szerkesztéséről.

Szabályzatutasítás

<forward-request http-version="1 | 2or1 | 2" timeout="time in seconds (alternatively, use timeout-ms)" | timeout-ms="time in milliseconds (alternatively, use timeout)" continue-timeout="time in seconds" follow-redirects="false | true" buffer-request-body="false | true" buffer-response="true | false" fail-on-error-status-code="false | true"/>

Attributes

Attribute Description Required Default
timeout Az időtúllépési hiba felmerülése előtt másodpercek alatt meg kell várni, amíg a háttérszolgáltatás visszaadja a HTTP-válaszfejléceket. A minimális érték 0 másodperc. A 240 másodpercnél nagyobb értékeket nem lehet tiszteletben tartani, mert a mögöttes hálózati infrastruktúra ezen idő után megszakadhat az inaktív kapcsolatok. A szabályzatkifejezések engedélyezettek. Megadhatja vagy timeouttimeout-ms mindkettőt, de mindkettőt nem. No 300
timeout-ms Ezredmásodpercben meg kell várni, amíg a háttérszolgáltatás visszaadja a HTTP-válaszfejléceket az időtúllépési hiba felmerülése előtt. A minimális érték 0 ms. A szabályzatkifejezések engedélyezettek. Megadhatja vagy timeouttimeout-ms mindkettőt, de mindkettőt nem. No N/A
continue-timeout Az az idő másodpercben, amíg a háttérszolgáltatás időtúllépési hiba felmerülése előtt visszaad 100 Continue egy állapotkódot. A szabályzatkifejezések engedélyezettek. No N/A
http-version A HTTP-kérés háttérszolgáltatásnak való küldésekor használandó HTTP-protokoll verziója:
- 1: HTTP/1
- 2: HTTP/2
- 2or1: Az átjáró a HTTP/2-t részesíti előnyben a HTTP/1-hez, de ha a HTTP/2 nem működik, visszaesik a HTTP/1-hez.

A HTTP/2 kimenő forgalom a kiválasztott átjárókban támogatott. Részletekért tekintse meg a használati megjegyzéseket .
No 1
follow-redirects Megadja, hogy a háttérszolgáltatásból érkező átirányításokat az átjáró követi-e vagy adja vissza a hívónak. A szabályzatkifejezések engedélyezettek. No false
buffer-request-body Ha be van trueállítva, a rendszer puffereli a kérést, és újrapróbálkozáskor újra felhasználja. No false
buffer-response Hatással van az adattömbre adott válaszok feldolgozására. Ha be van falseállítva, a háttérrendszertől kapott összes adattömb azonnal visszakerül a hívónak. Ha be van trueállítva, a rendszer puffereli az adattömböket (8 KB, kivéve, ha a stream vége észlelhető), és csak ezután adja vissza a hívónak.

false Állítson be olyan háttérrendszereket, mint például a kiszolgáló által küldött eseményeket (SSE), amelyek megkövetelik a tartalom azonnali visszaadását vagy streamelését a hívónak. A szabályzatkifejezések nem engedélyezettek.
No true
fail-on-error-status-code Ha be van trueállítva, a 400 és 599 közötti tartomány válaszkódjainak hibakeresési szakaszát aktiválja. A szabályzatkifejezések nem engedélyezettek. No false

Usage

Használati megjegyzések

  • http-version Az attribútum segítségével engedélyezheti a HTTP/2 protokollt az átjáróból a háttérrendszerbe kimenő kimenő forgalomhoz. Állítsa be az attribútumot a következőre 2or1 vagy 2. Jelenleg a HTTP/2 kimenő forgalom támogatott a saját üzemeltetésű átjáróban és előzetes verzióban a v2-átjáróban.

    Important

    A v2-átjáróban a HTTP/2 támogatja az API Management-átjáróra irányuló bejövő és az átjáróból a háttérrendszerbe irányuló kimenő, de nem végpontok közötti bejövő forgalmat. A v2-átjáró jelenleg egy bejövő HTTP/2-kapcsolatot vált le a HTTP/1-hez, mielőtt továbbküldené a kérést a háttérrendszernek.

Examples

Kérés küldése HTTP/2 háttérrendszernek

Az alábbi API-szintű szabályzat az összes API-kérést egy HTTP/2 háttérszolgáltatásnak továbbítja. Ezzel a szabályzattal például továbbíthatja a kéréseket egy saját üzemeltetésű átjáróról egy gRPC-háttérrendszerbe.

<!-- api level -->
<policies>
    <inbound>
        <base/>
    </inbound>
    <backend>
        <forward-request http-version="2or1"/>
    </backend>
    <outbound>
        <base/>
    </outbound>
</policies>

Kérelem továbbítása időtúllépési időközzel

A következő API-szintű szabályzat 60 másodperces időtúllépési intervallummal továbbítja az összes API-kérést a háttérszolgáltatásnak.

<!-- api level -->
<policies>
    <inbound>
        <base/>
    </inbound>
    <backend>
        <forward-request timeout="60"/>
    </backend>
    <outbound>
        <base/>
    </outbound>
</policies>

Házirend öröklése szülőhatókörből

Ez a műveleti szintű szabályzat az base elem használatával örökli a háttérházirendet a szülő API-szint hatóköréből.

<!-- operation level -->
<policies>
    <inbound>
        <base/>
    </inbound>
    <backend>
        <base/>
    </backend>
    <outbound>
        <base/>
    </outbound>
</policies>

Ne örökölje a házirendet a szülő hatóköréből

Ez a műveleti szintű szabályzat explicit módon továbbítja az összes kérést a háttérszolgáltatásnak 120-es időtúllépéssel, és nem örökli a szülő API-szintű háttérszabályzatot. Ha a háttérszolgáltatás 400 és 599 közötti hibaállapot-kóddal válaszol, a hibaszakasz aktiválódik.

<!-- operation level -->
<policies>
    <inbound>
        <base/>
    </inbound>
    <backend>
        <forward-request timeout="120" fail-on-error-status-code="true" />
        <!-- effective policy. note the absence of <base/> -->
    </backend>
    <outbound>
        <base/>
    </outbound>
</policies>

Ne továbbítsa a kéréseket a háttérrendszernek

Ez a műveleti szintű szabályzat nem továbbítja a kéréseket a háttérszolgáltatásnak.

<!-- operation level -->
<policies>
    <inbound>
        <base/>
    </inbound>
    <backend>
        <!-- no forwarding to backend -->
    </backend>
    <outbound>
        <base/>
    </outbound>
</policies>

A szabályzatok használatával kapcsolatos további információkért lásd: