Atur header

BERLAKU UNTUK: Semua tingkatAN API Management

Kebijakan set-header menetapkan nilai ke respons HTTP dan/atau header permintaan yang ada atau menambahkan respons baru dan/atau header permintaan.

Gunakan kebijakan untuk menyisipkan daftar header HTTP ke dalam pesan HTTP. Ketika ditempatkan dalam alur masuk, kebijakan ini menetapkan header HTTP untuk permintaan yang diteruskan ke layanan target. Ketika ditempatkan dalam alur keluar, kebijakan ini menetapkan header HTTP untuk respons yang dikirim keklien gateway.

Catatan

Tetapkan elemen kebijakan dan elemen turunan dalam urutan yang disediakan dalam pernyataan kebijakan. Untuk membantu Anda mengonfigurasi kebijakan ini, portal menyediakan editor berbasis formulir berikut panduannya. Pelajari lebih lanjut cara mengatur atau mengedit kebijakan API Management.

Pernyataan kebijakan

<set-header name="header name" exists-action="override | skip | append | delete">
    <value>value</value> <!--for multiple headers with the same name add additional value elements-->
</set-header>

Atribut

Nama Deskripsi Wajib diisi Default
exists-action Menentukan tindakan yang akan diambil ketika header sudah ditentukan. Atribut ini harus memiliki salah satu nilai berikut.

- override - menggantikan nilai header yang ada.
- skip - tidak menggantikan nilai header yang ada.
- append - menambahkan nilai ke nilai header yang ada.
- delete - menghapus header dari permintaan.

Saat diatur ke override, mendaftarkan beberapa entri dengan nama yang sama menghasilkan header yang diatur sesuai dengan semua entri (yang akan dicantumkan beberapa kali); hanya nilai yang tercantum yang akan diatur dalam hasil.

Ekspresi kebijakan diizinkan.
No override
nama Menentukan nama header yang akan disetel. Ekspresi kebijakan diizinkan. Ya T/A

Elemen

Nama Deskripsi Wajib diisi
value Menentukan nilai header yang akan disetel. Ekspresi kebijakan diizinkan. Untuk beberapa header dengan nama yang sama, tambahkan elemen tambahan value . No

Penggunaan

Catatan penggunaan

Beberapa nilai header digabungkan ke string CSV, misalnya:

headerName: value1,value2,value3

Pengecualian meliputi header standar yang nilainya:

  • dapat berisi koma (User-Agent, WWW-Authenticate, Proxy-Authenticate)
  • mungkin mengandung tanggal (Cookie, Set-Cookie, Warning),
  • berisi tanggal (Date, Expires, If-Modified-Since, If-Unmodified-Since, Last-Modified, Retry-After).

Dalam kasus pengecualian tersebut, beberapa nilai header tidak akan digabungkan menjadi satu string dan akan diteruskan sebagai header terpisah, misalnya:

User-Agent: value1
User-Agent: value2
User-Agent: value3

Batasan berikut berlaku:

  • Server Penghapusan header tidak didukung.
  • Header: Connection, ContentLength, KeepAlive, TransferEncoding tidak dapat dimodifikasi atau dihapus.

Contoh

Tambahkan header, ambil alih yang sudah ada

<set-header name="some header name" exists-action="override">
    <value>20</value>
</set-header>

Hapus header

 <set-header name="some header name" exists-action="delete" />

Meneruskan informasi konteks ke layanan backend

Contoh ini menunjukkan cara menerapkan kebijakan di tingkat API untuk memasok informasi konteks ke layanan backend.

<!-- Copy this snippet into the inbound element to forward some context information, user id and the region the gateway is hosted in, to the backend service for logging or evaluation -->
<set-header name="x-request-context-data" exists-action="override">
  <value>@(context.User.Id)</value>
  <value>@(context.Deployment.Region)</value>
</set-header>

Untuk informasi selengkapnya, lihat Ekspresi kebijakan dan Variabel konteks.

Untuk informasi selengkapnya tentang bekerja dengan kebijakan, lihat: