IHttpFilter Antarmuka
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Antarmuka yang digunakan untuk mengimplementasikan filter kustom untuk instans HttpClient .
public interface class IHttpFilter : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(2764795349, 2306, 17310, 191, 215, 225, 37, 82, 177, 101, 206)]
struct IHttpFilter : IClosable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.Guid(2764795349, 2306, 17310, 191, 215, 225, 37, 82, 177, 101, 206)]
public interface IHttpFilter : System.IDisposable
Public Interface IHttpFilter
Implements IDisposable
- Turunan
- Atribut
- Penerapan
Persyaratan Windows
Rangkaian perangkat |
Windows 10 (diperkenalkan dalam 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)
|
Keterangan
Antarmuka IHttpFilter digunakan untuk mengembangkan filter kustom untuk instans HttpClient . Filter kustom diimplementasikan dalam metode SendRequestAsync pada antarmuka IHttpFilter mereka.
Kelas di namespace Windows.Web.Http mendukung penggunaan filter berdasarkan kelas di namespace Windows.Web.Http.Filters . Kelas HttpClient di namespace Windows.Web.Http menyediakan kelas dasar untuk mengirim permintaan HTTP dan menerima respons HTTP. Filter menyediakan mekanisme handler untuk membantu masalah layanan HTTP umum. Filter sederhana dapat dirangkai bersama dalam urutan untuk menangani masalah layanan HTTP yang lebih kompleks.
Filter HTTP adalah kotak hitam yang mengambil pesan permintaan HTTP dan menghasilkan pesan respons HTTP. Bagaimana filter mendapatkan respons HTTP ditentukan oleh pengembang filter. Aplikasi dapat segera membuat respons, aplikasi dapat mengirim permintaan melalui TCP ke server, bahkan dapat mengirim beberapa permintaan ke server (atau ke lebih dari satu server) sebelum menghasilkan pesan respons. Karena tidak ditentukan bagaimana filter masuk ke pesan respons, filter dapat meneruskan pesan permintaan ke filter lain (disebut filter dalam), sehingga mendelegasikan pembuatan pesan respons ke filter dalam.
Filter biasanya menambahkan atau mengubah header, menangani otorisasi (mungkin menggunakan WebAuthenticationBroker), atau mengizinkan atau melarang permintaan berdasarkan kondisi jaringan. Filter biasanya membuat perubahan lalu meneruskan permintaan ke filter dalam, yang biasanya diatur saat filter dibuat.
Pendekatan ini memungkinkan filter untuk hanya bertanggung jawab atas aspek tertentu dari eksekusi permintaan HTTP dan mendelegasikan aspek lain ke filter lain. Filter dapat menerapkan penembolokan, autentikasi, pengalihan, cookie, komunikasi aktual dengan server, atau kombinasi ini. Filter paling bawah (dasar) biasanya akan menjadi filter yang melakukan komunikasi aktual dengan jaringan.
Pengembang dapat menulis filter mereka sendiri untuk masalah khusus situs. Contohnya adalah bahwa beberapa situs menggunakan respons 503 (Layanan Tidak Tersedia) untuk menunjukkan bahwa permintaan harus dicoba kembali. Filter kustom dapat diimplementasikan untuk mendeteksi perilaku ini dan merespons dengan sesuai. Contoh lain dapat menangani metode di namespace Windows.Web.Http dan Windows.Web.Http.Filters yang mengirim data melalui pengecualian lemparan jaringan karena kegagalan jaringan (konektivitas jaringan hilang dalam mode pesawat, misalnya). Filter kustom dapat mengubah pengecualian jaringan tangkapan dan mengonversinya menjadi kode status HTTP.
Metode
Dispose() |
Melakukan tugas yang ditentukan aplikasi yang terkait dengan membebaskan, merilis, atau mengatur ulang sumber daya yang tidak dikelola. |
SendRequestAsync(HttpRequestMessage) |
Kirim permintaan HTTP pada instans IHttpFilter sebagai operasi asinkron. |