Zapisz ponownie adres URL

DOTYCZY: Wszystkie warstwy usługi API Management

Zasady rewrite-uri konwertuje adres URL żądania z formularza publicznego na formularz oczekiwany przez usługę internetową, jak pokazano w poniższym przykładzie.

  • Publiczny adres URL — http://api.example.com/storenumber/ordernumber

  • Adres URL żądania — http://api.example.com/v2/US/hardware/storenumber&ordernumber?City&State

Te zasady mogą być używane, gdy adres URL przyjazny dla człowieka i/lub przeglądarki powinien zostać przekształcony w format adresu URL oczekiwany przez usługę internetową. Te zasady należy stosować tylko w przypadku uwidaczniania alternatywnego formatu adresu URL, takiego jak czyste adresy URL, adresy URL RESTful, przyjazne dla użytkownika adresy URL lub przyjazne dla seo adresy URL, które są czysto strukturalnymi adresami URL, które nie zawierają ciągu zapytania i zamiast tego zawierają tylko ścieżkę zasobu (po schemacie i urzędzie). Jest to często wykonywane w celach estetycznych, użyteczności lub optymalizacji aparatu wyszukiwania (SEO).

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

<rewrite-uri template="uri template" copy-unmatched-params="true | false" />

Atrybuty

Imię i nazwisko/nazwa opis Wymagani Wartość domyślna
sieci Web Rzeczywisty adres URL usługi internetowej z dowolnymi parametrami ciągu zapytania. Wyrażenia zasad są dozwolone. Gdy wyrażenia są używane, cała wartość musi być wyrażeniem. Tak Nie dotyczy
copy-unmatched-params Określa, czy parametry zapytania w żądaniu przychodzącym, które nie występują w oryginalnym szablonie adresu URL, są dodawane do adresu URL zdefiniowanego przez szablon ponownego zapisywania. Wyrażenia zasad są dozwolone. Nie. true

Użycie

Uwagi dotyczące użycia

Parametry ciągu zapytania można dodawać tylko przy użyciu zasad. Nie można dodać dodatkowych parametrów ścieżki szablonu w adresie URL ponownego zapisywania.

Przykład

<policies>
    <inbound>
        <base />
        <rewrite-uri template="/v2/US/hardware/{storenumber}&{ordernumber}?City=city&State=state" />
    </inbound>
    <outbound>
        <base />
    </outbound>
</policies>
<!-- Assuming incoming request is /get?a=b&c=d and operation template is set to /get?a={b} -->
<policies>
    <inbound>
        <base />
        <rewrite-uri template="/put" />
    </inbound>
    <outbound>
        <base />
    </outbound>
</policies>
<!-- Resulting URL will be /put?c=d -->
<!-- Assuming incoming request is /get?a=b&c=d and operation template is set to /get?a={b} -->
<policies>
    <inbound>
        <base />
        <rewrite-uri template="/put" copy-unmatched-params="false" />
    </inbound>
    <outbound>
        <base />
    </outbound>
</policies>
<!-- Resulting URL will be /put -->

Aby uzyskać więcej informacji na temat pracy z zasadami, zobacz: