Menulis ulang URL

BERLAKU UNTUK: Semua tingkatAN API Management

Kebijakan rewrite-uri mengonversi URL permintaan dari bentuk publiknya ke bentuk yang diharapkan oleh layanan web, seperti yang ditunjukkan dalam contoh berikut.

  • URL Publik - http://api.example.com/storenumber/ordernumber

  • URL Permintaan - http://api.example.com/v2/US/hardware/storenumber&ordernumber?City&State

Kebijakan ini dapat digunakan ketika URL yang ramah manusia dan/atau browser harus diubah menjadi format URL yang diharapkan oleh layanan web. Kebijakan ini hanya perlu diterapkan saat mengekspos format URL alternatif, seperti URL bersih, URL RESTful, URL yang mudah digunakan atau URL ramah SEO yang murni URL struktural yang tidak berisi string kueri dan sebaliknya hanya berisi jalur sumber daya (setelah skema dan otoritas). Ini sering dilakukan untuk tujuan estetika, kegunaan, atau pengoptimalan mesin pencari (SEO).

Catatan

Tetapkan elemen kebijakan dan elemen turunan dalam urutan yang disediakan dalam pernyataan kebijakan. Pelajari lebih lanjut cara mengatur atau mengedit kebijakan API Management.

Pernyataan kebijakan

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

Atribut

Nama Deskripsi Wajib diisi Default
templat URL layanan web aktual dengan parameter string kueri apa pun. Ekspresi kebijakan diizinkan. Saat ekspresi digunakan, seluruh nilai harus berupa ekspresi. Ya T/A
copy-unmatched-params Menentukan apakah parameter kueri dalam permintaan masuk yang tidak ada dalam templat URL asli ditambahkan ke URL yang ditentukan oleh templat penulisan ulang. Ekspresi kebijakan diizinkan. No true

Penggunaan

Catatan penggunaan

Anda hanya bisa menambahkan parameter string kueri menggunakan kebijakan. Anda tidak dapat menambahkan parameter jalur templat tambahan di URL penulisan ulang.

Contoh

<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 -->

Untuk informasi selengkapnya tentang bekerja dengan kebijakan, lihat: