Ustaw usługę zaplecza
DOTYCZY: Wszystkie warstwy usługi API Management
Użyj zasad, set-backend-service
aby przekierować żądanie przychodzące do innego zaplecza niż określone w ustawieniach interfejsu API dla tej operacji. Te zasady zmieniają podstawowy adres URL usługi zaplecza przychodzącego żądania na adres URL lub zaplecze określone w zasadach.
Odwoływanie się do jednostki zaplecza umożliwia zarządzanie podstawowym adresem URL usługi zaplecza i innymi ustawieniami w jednym miejscu i ponowne użycie ich w wielu interfejsach API i operacjach. Zaimplementuj również równoważenie obciążenia ruchu w puli usług zaplecza i reguł wyłącznika, aby chronić zaplecze przed zbyt wieloma żądaniami.
Uwaga
Jednostki zaplecza można zarządzać za pośrednictwem witryny Azure Portal, interfejsu API zarządzania i programu PowerShell.
Uwaga
Ustaw elementy zasad i elementy podrzędne w kolejności podanej w instrukcji zasad. Dowiedz się więcej na temat ustawiania lub edytowania zasad usługi API Management.
Instrukcja zasad
<set-backend-service base-url="base URL of the backend service" backend-id="name of the backend entity specifying base URL of the backend service" sf-resolve-condition="condition" sf-service-instance-name="Service Fabric service name" sf-listener-name="Service Fabric listener name" />
Atrybuty
Użycie
- Sekcje zasad: ruch przychodzący, zaplecze
- Zakresy zasad: globalny, obszar roboczy, produkt, interfejs API, operacja
- Bramy: klasyczne, v2, zużycie, self-hosted, obszar roboczy
Uwagi dotyczące użycia
Obecnie jeśli zdefiniujesz zasady podstawowe set-backend-service
przy użyciu atrybutu backend-id
i dziedziczysz zasady podstawowe przy użyciu <base />
zakresu, można je zastąpić tylko zasadami przy użyciu atrybutu backend-id
, a nie atrybutu base-url
.
Przykłady
Kierowanie żądania na podstawie wartości w ciągu zapytania
W tym przykładzie set-backend-service
zasady kieruje żądania na podstawie wartości wersji przekazanej w ciągu zapytania do innej usługi zaplecza niż określona w interfejsie API.
<policies>
<inbound>
<choose>
<when condition="@(context.Request.Url.Query.GetValueOrDefault("version") == "2013-05")">
<set-backend-service base-url="http://contoso.com/api/8.2/" />
</when>
<when condition="@(context.Request.Url.Query.GetValueOrDefault("version") == "2014-03")">
<set-backend-service base-url="http://contoso.com/api/9.1/" />
</when>
</choose>
<base />
</inbound>
<outbound>
<base />
</outbound>
</policies>
Początkowo podstawowy adres URL usługi zaplecza pochodzi z ustawień interfejsu API. Dlatego adres URL żądania staje się http://contoso.com/api/10.4/partners/15?version=2013-05&subscription-key=abcdef
adresem http://contoso.com/api/10.4/
URL https://contoso.azure-api.net/api/partners/15?version=2013-05&subscription-key=abcdef
usługi zaplecza określonym w ustawieniach interfejsu API.
Po zastosowaniu <instrukcji select> policy podstawowy adres URL usługi zaplecza może zmienić się ponownie na http://contoso.com/api/8.2
lub http://contoso.com/api/9.1
, w zależności od wartości parametru zapytania żądania wersji. Jeśli na przykład wartość to "2013-15"
końcowy adres URL żądania, stanie się .http://contoso.com/api/8.2/partners/15?version=2013-15&subscription-key=abcdef
Jeśli wymagane jest dalsze przekształcenie żądania, można użyć innych zasad przekształcania. Aby na przykład usunąć parametr zapytania wersji, który jest teraz kierowany do zaplecza specyficznego dla wersji, można użyć zasad Ustaw parametr ciągu zapytania, aby usunąć atrybut wersji teraz nadmiarowej.
Kierowanie żądań do zaplecza usługi Service Fabric
W tym przykładzie zasady przekierowuje żądanie do zaplecza usługi Service Fabric przy użyciu ciągu zapytania userId jako klucza partycji i przy użyciu repliki podstawowej partycji.
<policies>
<inbound>
<set-backend-service backend-id="my-sf-service" sf-partition-key="@(context.Request.Url.Query.GetValueOrDefault("userId","")" sf-replica-type="primary" />
</inbound>
<outbound>
<base />
</outbound>
</policies>
Powiązane zasady
Powiązana zawartość
Aby uzyskać więcej informacji na temat pracy z zasadami, zobacz:
- Samouczek: przekształcanie i ochrona interfejsu API
- Dokumentacja zasad dla pełnej listy instrukcji zasad i ich ustawień
- Wyrażenia zasad
- Ustawianie lub edytowanie zasad
- Ponowne używanie konfiguracji zasad
- Repozytorium fragmentów zasad
- Tworzenie zasad przy użyciu rozwiązania Microsoft Copilot na platformie Azure