WinHttpHandler Kelas
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.
Menangani pesan berdasarkan antarmuka WinHTTP Windows. Kelas ini ditujukan untuk digunakan di lingkungan server.
public ref class WinHttpHandler : System::Net::Http::HttpMessageHandler
public class WinHttpHandler : System.Net.Http.HttpMessageHandler
type WinHttpHandler = class
inherit HttpMessageHandler
Public Class WinHttpHandler
Inherits HttpMessageHandler
- Warisan
Keterangan
WinHttpHandler mirip dengan kelas lain yang ada seperti HttpClientHandler. WinHttpHandler menyediakan handler di bawah HttpClient instans dan digunakan untuk mengirim permintaan HTTP ke server dan menerima respons server. Implementasi WinHttpHandler ini mendukung versi HTTP hingga HTTP/2.
WinHttpHandler memberi pengembang kontrol yang lebih terperinci atas komunikasi HTTP aplikasi daripada HttpClientHandler kelas . Hal ini memungkinkan pengembang untuk menerapkan skenario HTTP yang lebih canggih atau memodifikasi default sistem (misalnya, pengaturan proksi, batas waktu, dan validasi sertifikat SSL server).
WinHttpHandlertidak dimaksudkan untuk menjadi pengganti .HttpClientHandler Sebaliknya, ini adalah versi yang lebih canggih yang disediakan untuk skenario di mana HttpClientHandler tidak cukup. WinHttpHandler diimplementasikan sebagai pembungkus tipis pada antarmuka WinHTTP Windows dan hanya didukung pada sistem Windows.
Saat menggunakan rantai beberapa handler, WinHttpHandler harus berada di bagian bawah rantai.
Mulai dari .NET 5, WinHttpHandler tidak lagi disertakan dalam rakitan System.Net.Http.dll sebagai bagian dari runtime .NET. Untuk informasi selengkapnya, lihat WinHttpHandler dihapus dari runtime .NET.
Header berikutnya
Dimulai dengan versi 6.0.0, WinHttpHandler mendukung header berikutnya, juga dikenal sebagai trailer (RFC 7230 - 4.1.2. Bagian Trailer Yang Dipotong).
- Pada .NET Standard 2.1 dan .NET 8 atau yang lebih baru, trailer ditambahkan ke TrailingHeaders.
- Pada .NET Framework, trailer ditambahkan ke properti terkenal di HttpRequestMessage.Properties pada objek permintaan yang sesuai dengan respons (HttpResponseMessage.RequestMessage). Nama properti adalah
__ResponseTrailers, jenis nilai properti adalah HttpHeaders.
Dukungan trailer diimplementasikan melalui WINHTTP_QUERY_FLAG_TRAILERSBendera Info Kueri yang telah diperkenalkan di Windows 11, versi 21H2 (10.0; Bangun 22000). Pada sistem Windows di mana WINHTTP_QUERY_FLAG_TRAILERS tidak didukung, trailer diabaikan.
Konstruktor
| Nama | Deskripsi |
|---|---|
| WinHttpHandler() |
Menginisialisasi instans baru dari kelas WinHttpHandler. |
Properti
| Nama | Deskripsi |
|---|---|
| AutomaticDecompression |
Mendapatkan atau mengatur jenis metode dekompresi yang digunakan oleh handler untuk dekompresi otomatis respons konten HTTP. |
| AutomaticRedirection |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah handler harus mengikuti respons pengalihan HTTP. |
| CheckCertificateRevocationList |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan memeriksa daftar pencabutan sertifikat selama validasi sertifikat SSL. |
| ClientCertificateOption |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah sertifikat secara otomatis dipilih dari penyimpanan sertifikat atau jika pemanggil diizinkan untuk meneruskan sertifikat klien tertentu. |
| ClientCertificates |
Mendapatkan kumpulan sertifikat SSL autentikasi klien yang digunakan untuk autentikasi klien oleh handler jika ClientCertificateOption properti diatur ke |
| CookieContainer |
Mendapatkan atau mengatur objek kontainer cookie terkelola. Properti ini hanya digunakan ketika CookieUsePolicy properti diatur ke UseSpecifiedCookieContainer. Jika tidak, SendAsync(HttpRequestMessage, CancellationToken) metode akan melemparkan pengecualian. |
| CookieUsePolicy |
Mendapatkan atau menetapkan nilai yang menunjukkan bagaimana cookie harus dikelola dan digunakan. Pengembang dapat memilih untuk mengabaikan cookie, memungkinkan handler mengelolanya secara otomatis atau menanganinya secara manual menggunakan CookieContainer objek. |
| DefaultProxyCredentials |
Ketika proksi default (sistem) digunakan, mendapatkan atau mengatur kredensial yang digunakan untuk mengirimkan ke server proksi default untuk autentikasi. |
| EnableMultipleHttp2Connections |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah koneksi HTTP/2 tambahan dapat dibuat ke server yang sama ketika jumlah maksimum aliran bersamaan tercapai pada semua koneksi yang ada. |
| MaxAutomaticRedirections |
Mendapatkan atau mengatur jumlah maksimum pengalihan HTTP yang diizinkan. |
| MaxConnectionsPerServer |
Mendapatkan atau mengatur jumlah maksimum koneksi TCP yang diizinkan ke satu server. |
| MaxResponseDrainSize |
Mendapatkan atau mengatur jumlah maksimum data yang dapat dikosongkan dari respons dalam byte. |
| MaxResponseHeadersLength |
Mendapatkan atau mengatur panjang maksimum, dalam kilobyte (1024 byte), dari header respons. |
| PreAuthenticate |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah handler mengirim header Otorisasi dengan permintaan. |
| Properties |
Mendapatkan kamus yang dapat ditulis (yaitu, peta) properti kustom untuk HttpClient permintaan. Kamus diinisialisasi kosong; Anda dapat menyisipkan dan mengkueri pasangan kunci-nilai untuk penangan kustom dan pemrosesan khusus Anda. |
| Proxy |
Mendapatkan atau mengatur proksi kustom saat WindowsProxyUsePolicy properti diatur untuk menggunakan proksi kustom. |
| ReceiveDataTimeout |
Mendapatkan atau mengatur batas waktu untuk menerima bagian data respons dari server. |
| ReceiveHeadersTimeout |
Mendapatkan atau mengatur batas waktu untuk menerima header respons dari server. |
| SendTimeout |
Mendapatkan atau mengatur batas waktu untuk mengirim permintaan. |
| ServerCertificateValidationCallback |
Mendapatkan atau mengatur metode panggilan balik untuk memvalidasi sertifikat server. Panggilan balik ini adalah bagian dari jabat tangan SSL. |
| ServerCredentials |
Mendapatkan atau mengatur kredensial yang akan digunakan oleh klien untuk mengautentikasi ke server. |
| SslProtocols |
Mendapatkan atau mengatur kumpulan protokol TLS/SSL yang didukung oleh klien. |
| TcpKeepAliveEnabled |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah TCP tetap aktif diaktifkan. |
| TcpKeepAliveInterval |
Mendapatkan atau mengatur interval tetap hidup TCP. |
| TcpKeepAliveTime |
Mendapatkan atau mengatur batas waktu TCP tetap hidup. |
| WindowsProxyUsePolicy |
Mendapatkan atau mengatur pengaturan proksi. Properti ini dapat diatur untuk menonaktifkan proksi, menggunakan proksi kustom, atau menggunakan pengaturan proksi WinHTTP atau WinInet pada komputer. |
Metode
| Nama | Deskripsi |
|---|---|
| Dispose() |
Merilis sumber daya yang tidak dikelola dan membuang sumber daya terkelola yang digunakan oleh HttpMessageHandler. (Diperoleh dari HttpMessageHandler) |
| Dispose(Boolean) |
Merilis sumber daya yang tidak dikelola yang digunakan oleh WinHttpHandler, dan secara opsional membuang sumber daya terkelola. |
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| SendAsync(HttpRequestMessage, CancellationToken) |
Mengirim permintaan HTTP sebagai operasi asinkron. |
| ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |