Kirim permintaan satu arah
BERLAKU UNTUK: Semua tingkatAN API Management
Kebijakan send-one-way-request
mengirimkan permintaan yang disediakan ke URL yang ditentukan tanpa menunggu respons.
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
<send-one-way-request mode="new | copy" timeout="time in seconds">
<set-url>request URL</set-url>
<set-method>...</set-method>
<set-header>...</set-header>
<set-body>...</set-body>
<authentication-certificate thumbprint="thumbprint" />
</send-one-way-request>
Atribut
Atribut | Deskripsi | Wajib diisi | Default |
---|---|---|---|
mode | Menentukan apakah ini adalah new permintaan atau copy header dan isi dalam permintaan saat ini. Di bagian kebijakan keluar, mode=copy tidak menginisialisasi isi permintaan. Ekspresi kebijakan diizinkan. |
No | new |
waktu habis | Interval waktu habis dalam hitungan detik sebelum panggilan ke URL gagal. Ekspresi kebijakan diizinkan. | No | 60 |
Elemen
Elemen | Deskripsi | Wajib diisi |
---|---|---|
set-url | URL permintaan. Ekspresi kebijakan diizinkan. | Tidak jika mode=copy ; sebaliknya ya. |
atur-metode | Mengatur metode permintaan. Ekspresi kebijakan tidak diizinkan. | Tidak jika mode=copy ; sebaliknya ya. |
atur-judul | Mengatur header dalam permintaan. Gunakan beberapa set-header elemen untuk beberapa header permintaan. |
No |
set-body | Mengatur isi permintaan. | No |
authentication-certificate | Sertifikat yang digunakan untuk autentikasi klien, ditentukan dalam thumbprint atribut. |
No |
proksi | Merutekan permintaan melalui proksi HTTP. | No |
Penggunaan
- Bagian kebijakan: masuk, keluar, backend, saat terjadi kesalahan
- Cakupan kebijakan: global, ruang kerja, produk, API, operasi
- Gateway: klasik, v2, konsumsi, dihost sendiri
Contoh
Contoh ini menggunakan send-one-way-request
kebijakan untuk mengirim pesan ke ruang obrolan Slack jika kode respons HTTP lebih besar dari atau sama dengan 500. Untuk informasi selengkapnya tentang sampel ini, lihat Menggunakan layanan eksternal dari layanan Azure API Management.
<choose>
<when condition="@(context.Response.StatusCode >= 500)">
<send-one-way-request mode="new" timeout="20">
<set-url>https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX</set-url>
<set-method>POST</set-method>
<set-body>@{
return new JObject(
new JProperty("username","APIM Alert"),
new JProperty("icon_emoji", ":ghost:"),
new JProperty("text", String.Format("{0} {1}\nHost: {2}\n{3} {4}\n User: {5}",
context.Request.Method,
context.Request.Url.Path + context.Request.Url.QueryString,
context.Request.Url.Host,
context.Response.StatusCode,
context.Response.StatusReason,
context.User.Email
))
).ToString();
}</set-body>
</send-one-way-request>
</when>
</choose>
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