Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
BERLAKU UNTUK: Semua tingkatAN API Management
Kebijakan ini rewrite-uri mengonversi URL permintaan dari formulir publiknya ke formulir yang diharapkan oleh layanan web.
Gunakan kebijakan ini saat Anda perlu mengubah URL yang cocok untuk manusia atau browser ke dalam format URL yang diharapkan oleh layanan web. Terapkan kebijakan ini hanya saat mengekspos format URL alternatif, seperti URL bersih, URL RESTful, URL yang mudah digunakan, atau URL ramah SEO yang murni struktural dan tidak berisi string kueri, melainkan hanya berisi jalur resource (setelah skema dan otoritas). Anda sering melakukan perubahan ini untuk tujuan estetika, kegunaan, atau optimasi 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 | Bawaan |
|---|---|---|---|
| pola acu | 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 di templat URL asli ditambahkan ke URL yang ditentukan oleh templat penulisan ulang. Ekspresi kebijakan diizinkan. | Tidak. | 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 dapat menambahkan parameter string kueri dengan menggunakan kebijakan. Anda tidak dapat menambahkan parameter jalur templat tambahan di URL yang ditulis ulang.
Examples
Contoh 1: Penulisan ulang URL dasar
Dalam contoh berikut, URL publik ditulis ulang agar sesuai dengan format URL layanan backend, dan parameter kueri disertakan berdasarkan logika lain.
URL Publik -
http://api.example.com/storenumber/ordernumberURL Permintaan -
http://api.example.com/v2/US/hardware/storenumber/ordernumber?City&State
<policies>
<inbound>
<base />
<rewrite-uri template="/v2/US/hardware/{storenumber}/{ordernumber}?City=city&State=state" />
</inbound>
<outbound>
<base />
</outbound>
</policies>
Contoh 2: Salin parameter yang tidak cocok
Dalam contoh berikut, URL publik ditulis ulang agar sesuai dengan format URL layanan backend, dan kebijakan menyalin parameter kueri yang tidak cocok ke URL baru.
<!-- 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 -->
Contoh 3: Jangan menyalin parameter yang tidak cocok
Dalam contoh berikut, URL publik ditulis ulang agar sesuai dengan format URL layanan backend, dan kebijakan menghapus parameter kueri yang tidak cocok.
<!-- 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 -->
Contoh 4: Gunakan ekspresi kebijakan dalam templat
Dalam contoh berikut, kebijakan menggunakan ekspresi dalam templat untuk membuat permintaan ke backend.
<policies>
<inbound>
<base />
<set-variable name="apiVersion" value="/v3" />
<rewrite-uri template="@("/api" + context.Variables["apiVersion"] + context.Request.Url.Path)" />
</inbound>
</policies>
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
- repo sampel Policy
- Toolkit kebijakan Azure API Management
- Mendapatkan bantuan Copilot untuk membuat, menjelaskan, dan memecahkan masalah kebijakan