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
- Bagian kebijakan: masuk
- Cakupan kebijakan: global, ruang kerja, produk, API, operasi
- Gateway: klasik, v2, konsumsi, dihost sendiri, ruang kerja
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 -->
Kebijakan terkait
Konten terkait
Untuk informasi selengkapnya tentang bekerja dengan kebijakan, lihat:
- Tutorial: Mengubah dan melindungi API Anda
- Referensi Kebijakan untuk daftar lengkap pernyataan kebijakan dan pengaturannya
- Ekspresi kebijakan
- Mengatur atau mengedit kebijakan
- Menggunakan kembali konfigurasi kebijakan
- Repositori cuplikan kebijakan
- Kebijakan penulis menggunakan Microsoft Copilot di Azure