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 forward-request meneruskan permintaan masuk ke layanan backend yang ditentukan dalam konteks permintaan. URL layanan backend ditentukan dalam pengaturan API dan dapat diubah menggunakan kebijakan setel layanan backend.
Important
- Kebijakan ini diperlukan untuk meneruskan permintaan ke backend API. Secara default, API Management menyiapkan kebijakan ini dalam cakupan global.
- Penghapusan kebijakan ini akan mengakibatkan permintaan yang tidak diteruskan ke layanan backend. Kebijakan di bagian keluar akan langsung dievaluasi setelah selesainya kebijakan di bagian masuk.
Note
Tetapkan elemen kebijakan dan elemen turunan dalam urutan yang disediakan dalam pernyataan kebijakan. Pelajari lebih lanjut cara mengatur atau mengedit kebijakan API Management.
Policy statement
<forward-request http-version="1 | 2or1 | 2" timeout="time in seconds (alternatively, use timeout-ms)" | timeout-ms="time in milliseconds (alternatively, use timeout)" continue-timeout="time in seconds" follow-redirects="false | true" buffer-request-body="false | true" buffer-response="true | false" fail-on-error-status-code="false | true"/>
Attributes
| Attribute | Description | Required | Default |
|---|---|---|---|
| timeout | Jumlah waktu dalam detik untuk menunggu header respons HTTP dikembalikan oleh layanan backend sebelum kesalahan batas waktu dimunculkan. Nilai minimum adalah 0 detik. Nilai yang lebih besar dari 240 detik mungkin tidak dihormati, karena infrastruktur jaringan yang mendasar dapat menghilangkan koneksi diam setelah waktu ini. Ekspresi kebijakan diizinkan. Anda dapat menentukan keduanya timeout atau timeout-ms tetapi tidak keduanya. |
No | 300 |
| timeout-ms | Jumlah waktu dalam milidetik untuk menunggu header respons HTTP dikembalikan oleh layanan backend sebelum kesalahan waktu habis dimunculkan. Nilai minimum adalah 0 mdtk. Ekspresi kebijakan diizinkan. Anda dapat menentukan keduanya timeout atau timeout-ms tetapi tidak keduanya. |
No | N/A |
| continue-timeout | Jumlah waktu dalam detik untuk 100 Continue menunggu kode status dikembalikan oleh layanan backend sebelum kesalahan batas waktu dinaikkan. Ekspresi kebijakan diizinkan. |
No | N/A |
| http-version | Versi protokol HTTP yang akan digunakan saat mengirim permintaan HTTP ke layanan backend: - 1: HTTP/1 - 2: HTTP/2 - 2or1: Gateway mendukung HTTP/2 melalui HTTP/1, tetapi kembali ke HTTP/1 jika HTTP/2 tidak berfungsi.HTTP/2 keluar didukung di gateway tertentu. Lihat Catatan penggunaan untuk detailnya. |
No | 1 |
| follow-redirects | Menentukan apakah pengalihan dari layanan backend diikuti oleh gateway atau dikembalikan ke pemanggil. Ekspresi kebijakan diizinkan. | No | false |
| buffer-request-body | Ketika diatur ke true, permintaan di-buffer dan akan digunakan kembali saat coba lagi. |
No | false |
| buffer-response | Memengaruhi pemrosesan respons yang tergugus. Ketika diatur ke false, setiap gugus yang diterima dari backend segera dikembalikan ke pemanggil. Ketika diatur ke true, gugus di-buffer (8 KB, kecuali akhir aliran terdeteksi) dan hanya kemudian dikembalikan ke pemanggil.Atur ke false dengan backend seperti yang menerapkan peristiwa yang dikirim server (SSE) yang mengharuskan konten dikembalikan atau dialirkan segera ke pemanggil. Ekspresi kebijakan tidak diizinkan. |
No | true |
| fail-on-error-status-code | Saat diatur ke true, memicu bagian on-error untuk kode respons dalam kisaran 400 hingga 599 inklusif. Ekspresi kebijakan tidak diizinkan. |
No | false |
Usage
- Bagian kebijakan: backend
- Cakupan kebijakan: global, ruang kerja, produk, API, operasi
- Gateway: klasik, v2, konsumsi, dihost sendiri, ruang kerja
Usage notes
http-versionGunakan atribut untuk mengaktifkan protokol HTTP/2 keluar dari gateway ke backend. Atur atribut ke2or1atau2. Saat ini, HTTP/2 keluar didukung di gateway yang dihost sendiri dan dalam pratinjau di gateway v2.Important
Di gateway v2, HTTP/2 didukung masuk ke gateway API Management dan keluar dari gateway ke backend tetapi bukan end-to-end. Saat ini, gateway v2 menurunkan koneksi HTTP/2 masuk ke HTTP/1 sebelum meneruskan permintaan ke backend.
Examples
Kirim permintaan ke backend HTTP/2
Kebijakan tingkat API berikut meneruskan semua permintaan API ke layanan backend HTTP/2. Misalnya, gunakan kebijakan ini untuk meneruskan permintaan dari gateway yang dihost sendiri ke backend gRPC.
<!-- api level -->
<policies>
<inbound>
<base/>
</inbound>
<backend>
<forward-request http-version="2or1"/>
</backend>
<outbound>
<base/>
</outbound>
</policies>
Meneruskan permintaan dengan interval waktu habis
Kebijakan tingkat API berikut meneruskan semua permintaan API ke layanan backend dengan interval waktu tunggu 60 detik.
<!-- api level -->
<policies>
<inbound>
<base/>
</inbound>
<backend>
<forward-request timeout="60"/>
</backend>
<outbound>
<base/>
</outbound>
</policies>
Mewarisi kebijakan dari cakupan induk
Kebijakan tingkat pengoperasian ini menggunakan elemen base untuk mewarisi kebijakan backend dari cakupan tingkat API induk.
<!-- operation level -->
<policies>
<inbound>
<base/>
</inbound>
<backend>
<base/>
</backend>
<outbound>
<base/>
</outbound>
</policies>
Jangan mewarisi kebijakan dari cakupan induk
Kebijakan tingkat operasi ini secara eksplisit meneruskan semua permintaan ke layanan backend dengan batas waktu 120 dan tidak mewarisi kebijakan backend tingkat API induk. Jika layanan backend merespons dengan kode status kesalahan dari 400 hingga 599 secara inklusif, bagian on-error akan dipicu.
<!-- operation level -->
<policies>
<inbound>
<base/>
</inbound>
<backend>
<forward-request timeout="120" fail-on-error-status-code="true" />
<!-- effective policy. note the absence of <base/> -->
</backend>
<outbound>
<base/>
</outbound>
</policies>
Jangan meneruskan permintaan ke backend
Kebijakan tingkat operasi ini tidak meneruskan permintaan ke layanan backend.
<!-- operation level -->
<policies>
<inbound>
<base/>
</inbound>
<backend>
<!-- no forwarding to backend -->
</backend>
<outbound>
<base/>
</outbound>
</policies>
Related policies
Related content
Untuk informasi selengkapnya tentang bekerja dengan kebijakan, lihat:
- Tutorial: Mengubah dan melindungi API Anda
- Referensi Kebijakan untuk daftar lengkap pernyataan kebijakan dan pengaturannya
- Policy expressions
- Mengatur atau mengedit kebijakan
- Menggunakan kembali konfigurasi kebijakan
- Repositori cuplikan kebijakan
- Repositori taman bermain kebijakan
- Toolkit kebijakan Azure API Management
- Mendapatkan bantuan Copilot untuk membuat, menjelaskan, dan memecahkan masalah kebijakan