HttpWebRequest Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
sınıfının HTTP'ye özgü bir uygulamasını WebRequest sağlar.
public ref class HttpWebRequest : System::Net::WebRequest
public ref class HttpWebRequest : System::Net::WebRequest, System::Runtime::Serialization::ISerializable
public class HttpWebRequest : System.Net.WebRequest
public class HttpWebRequest : System.Net.WebRequest, System.Runtime.Serialization.ISerializable
[System.Serializable]
public class HttpWebRequest : System.Net.WebRequest, System.Runtime.Serialization.ISerializable
type HttpWebRequest = class
inherit WebRequest
type HttpWebRequest = class
inherit WebRequest
interface ISerializable
[<System.Serializable>]
type HttpWebRequest = class
inherit WebRequest
interface ISerializable
Public Class HttpWebRequest
Inherits WebRequest
Public Class HttpWebRequest
Inherits WebRequest
Implements ISerializable
- Devralma
- Devralma
- Öznitelikler
- Uygulamalar
Örnekler
Aşağıdaki kod örneği, URI http://www.contoso.com/
için bir HttpWebRequest oluşturur.
HttpWebRequest^ myReq = dynamic_cast<HttpWebRequest^>(WebRequest::Create( "http://www.contoso.com/" ));
HttpWebRequest myReq =
(HttpWebRequest)WebRequest.Create("http://www.contoso.com/");
Dim myReq As HttpWebRequest = _
WebRequest.Create("http://www.contoso.com/")
Açıklamalar
Önemli
Yeni geliştirme için kullanmamanızı HttpWebRequest
öneririz. Bunun yerine sınıfını System.Net.Http.HttpClient kullanın.
sınıfı, HttpWebRequest ve içinde WebRequest tanımlanan özellikler ve yöntemler için kullanıcının HTTP kullanarak sunucularla doğrudan etkileşim kurmasını sağlayan ek özellikler ve yöntemler için destek sağlar.
Oluşturucuyu HttpWebRequest kullanmayın.
WebRequest.Create Yeni HttpWebRequest nesneleri başlatmak için yöntemini kullanın. Tekdüzen Kaynak Tanımlayıcısı (URI) şeması veya https://
Create isehttp://
, bir HttpWebRequest nesnesi döndürür.
yöntemi özelliğinde GetResponseRequestUri belirtilen kaynağa zaman uyumlu bir istekte bulunur ve yanıt nesnesini içeren bir HttpWebResponse döndürür. Yanıt verileri tarafından GetResponseStreamdöndürülen akış kullanılarak alınabiliyor. Yanıt nesnesi veya yanıt akışı kapatılırsa kalan veriler iptal edilir. Kalan veriler boşaltılır ve aşağıdaki koşullar geçerliyse yanıt nesnesi veya akışı kapatılırken yuva sonraki istekler için yeniden kullanılır: etkin tutma veya işlem hattı isteğidir, yalnızca az miktarda veri alınması gerekir veya kalan veriler küçük bir zaman aralığında alınır. Belirtilen koşullardan hiçbiri tutmazsa veya boşaltma süresi aşılırsa, yuva kapatılır. Etkin tutma veya işlem hattı bağlantıları için, uygulamanın EOF'ye kadar akışları okumasını kesinlikle öneririz. Bu, yuvanın sonraki istekler için yeniden kullanılmasını sağlayarak daha iyi performans ve daha az kaynak kullanılmasını sağlar.
Kaynağa veri göndermek istediğinizde, GetRequestStream yöntemi veri göndermek için kullanılacak bir Stream nesne döndürür. BeginGetRequestStream ve EndGetRequestStream yöntemleri, veri gönderme akışına zaman uyumsuz erişim sağlar.
ile HttpWebRequestistemci kimlik doğrulaması için, istemci sertifikası geçerli kullanıcının Sertifikam deposuna yüklenmelidir.
Sınıfı, HttpWebRequest bir WebException kaynağa erişirken hatalar oluştuğunda bir oluşturur. özelliği, WebException.Status hatanın kaynağını gösteren bir WebExceptionStatus değer içerir. olduğunda WebException.StatusWebExceptionStatus.ProtocolErrorözelliği Response , kaynaktan alınan öğesini içerir HttpWebResponse .
HttpWebRequest İnternet kaynağına özellik olarak gönderilen, yöntemlere göre ayarlanan veya sistem tarafından ayarlanan ortak HTTP üst bilgi değerlerini kullanıma sunar; aşağıdaki tabloda tam bir liste yer alır. Özelliğindeki Headers diğer üst bilgileri ad/değer çiftleri olarak ayarlayabilirsiniz. Sunucuların ve önbelleklerin istek sırasında üst bilgileri değiştirebileceğini veya ekleyebileceğini unutmayın.
Aşağıdaki tabloda, özelliklere, yöntemlere veya sisteme göre ayarlanan HTTP üst bilgileri listelenir.
Üst bilgi | Ayar ölçütü |
---|---|
Accept |
özelliğine Accept göre ayarlayın. |
Connection |
özelliğine ConnectionKeepAlive göre ayarlayın. |
Content-Length |
özelliğine ContentLength göre ayarlayın. |
Content-Type |
özelliğine ContentType göre ayarlayın. |
Expect |
özelliğine Expect göre ayarlayın. |
Date |
Sistem tarafından geçerli tarih olarak ayarlanır. |
Host |
Sistem tarafından geçerli konak bilgilerine ayarlanır. |
If-Modified-Since |
özelliğine IfModifiedSince göre ayarlayın. |
Range |
yöntemi tarafından AddRange ayarlanır. |
Referer |
özelliğine Referer göre ayarlayın. |
Transfer-Encoding |
özelliği tarafından TransferEncoding ayarlanır ( SendChunked özelliği olmalıdır true ). |
User-Agent |
özelliğine UserAgent göre ayarlayın. |
Not
HttpWebRequest otomatik olarak kaydedilir. veya https://
ile http://
başlayan URI'leri kullanmadan önce kaydetmek System.Net.HttpWebRequest için yöntemini çağırmanız RegisterPrefix gerekmez.
Yerel bilgisayar veya uygulama yapılandırma dosyası varsayılan bir ara sunucunun kullanılacağını belirtebilir. Proxy Özellik belirtilirse, özelliğindeki Proxy ara sunucu ayarları yerel bilgisayarı veya uygulama yapılandırma dosyasını geçersiz kılar ve HttpWebRequest örnek belirtilen ara sunucu ayarlarını kullanır. Yapılandırma dosyasında hiçbir ara sunucu belirtilmemişse ve Proxy özellik belirtilmemişse, HttpWebRequest sınıf yerel bilgisayardaki İnternet seçeneklerinden devralınan ara sunucu ayarlarını kullanır. İnternet seçeneklerinde ara sunucu ayarları yoksa istek doğrudan sunucuya gönderilir.
Not
Framework, SSL oturumlarını oluşturuldukları anda önbelleğe alır ve mümkünse yeni bir istek için önbelleğe alınmış bir oturumu yeniden kullanma girişiminde bulunur. Bir SSL oturumunu yeniden kullanma girişiminde bulunurken, Framework ilk öğesini ClientCertificates kullanır (varsa) veya boşsa ClientCertificates anonim oturumları yeniden kullanma girişiminde bulunur.
Not
Güvenlik nedeniyle tanımlama bilgileri varsayılan olarak devre dışı bırakılır. Tanımlama bilgilerini kullanmak istiyorsanız, tanımlama bilgilerini etkinleştirmek için özelliğini kullanın CookieContainer .
.NET Framework 4.6, bağlantılar için güvenli olmayan şifreleme ve karma algoritmalarını engelleyen yeni bir güvenlik özelliği içerir. HTTPClient, HttpWebRequest, FTPClient, SmtpClient, SslStream gibi API'ler aracılığıyla TLS/SSL kullanan ve .NET Framework 4.6'yı hedefleyen uygulamalar varsayılan olarak daha güvenli bir davranış elde eder.
Geliştiriciler, mevcut SSL3 hizmetleriyle veya RC4 hizmetleriyle TLS ile birlikte çalışabilirliği sürdürmek için bu davranışı geri çevirmek isteyebilir. Bu makalede , yeni davranışın devre dışı bırakılması için kodunuzun nasıl değiştirileceği açıklanır.
Oluşturucular
HttpWebRequest() |
Geçersiz.
Geçersiz.
HttpWebRequest sınıfının yeni bir örneğini başlatır. Bu oluşturucu kullanımdan kaldırıldı. |
HttpWebRequest(SerializationInfo, StreamingContext) |
Geçersiz.
Geçersiz.
Geçersiz.
Geçersiz.
ve StreamingContext sınıflarının HttpWebRequest belirtilen örneklerinden sınıfının yeni bir örneğini SerializationInfo başlatır. Bu oluşturucu kullanımdan kaldırıldı. |
Özellikler
Accept |
HTTP üst bilgisinin |
Address |
İsteğe gerçekten yanıt veren İnternet kaynağının Tekdüzen Kaynak Tanımlayıcısını (URI) alır. |
AllowAutoRedirect |
İsteğin yeniden yönlendirme yanıtlarını izlemesi gerekip gerekmediğini belirten bir değer alır veya ayarlar. |
AllowReadStreamBuffering |
İnternet kaynağından alınan arabelleğe alınıp alınmayacağını belirten bir değer alır veya ayarlar. |
AllowWriteStreamBuffering |
İnternet kaynağına gönderilen verilerin arabelleğe alınıp alınmayacağını belirten bir değer alır veya ayarlar. |
AuthenticationLevel |
Bu istek için kullanılan kimlik doğrulama ve kimliğe bürünme düzeyini gösteren değerleri alır veya ayarlar. (Devralındığı yer: WebRequest) |
AutomaticDecompression |
Kullanılan sıkıştırma türünü alır veya ayarlar. |
CachePolicy |
Bu istek için önbellek ilkesini alır veya ayarlar. (Devralındığı yer: WebRequest) |
ClientCertificates |
Bu istekle ilişkili güvenlik sertifikalarının koleksiyonunu alır veya ayarlar. |
Connection |
HTTP üst bilgisinin |
ConnectionGroupName |
İstek için bağlantı grubunun adını alır veya ayarlar. |
ConnectionGroupName |
Alt sınıfta geçersiz kılındığında, istek için bağlantı grubunun adını alır veya ayarlar. (Devralındığı yer: WebRequest) |
ContentLength |
HTTP üst bilgisini alır veya ayarlar |
ContentLength |
Alt sınıfta geçersiz kılındığında, gönderilen istek verilerinin içerik uzunluğunu alır veya ayarlar. (Devralındığı yer: WebRequest) |
ContentType |
HTTP üst bilgisinin |
ContinueDelegate |
İnternet kaynağından http 100 devam yanıtı alındığında çağrılan temsilci yöntemini alır veya ayarlar. |
ContinueTimeout |
Sunucudan 100-Devam'ın alınmasını beklemek için milisaniye cinsinden bir zaman aşımı alır veya ayarlar. |
CookieContainer |
İstekle ilişkili tanımlama bilgilerini alır veya ayarlar. |
CreatorInstance |
Geçersiz.
Bir alt sınıfta geçersiz kılındığında, belirtilen URI'ye istekte bulunmak için örneği oluşturulmuş oluşturmak WebRequest için kullanılan sınıftan türetilen IWebRequestCreate fabrika nesnesini alır. (Devralındığı yer: WebRequest) |
Credentials |
İstek için kimlik doğrulama bilgilerini alır veya ayarlar. |
Date |
HTTP isteğinde |
DefaultCachePolicy |
Bu istek için varsayılan önbellek ilkesini alır veya ayarlar. |
DefaultMaximumErrorResponseLength |
HTTP hata yanıtının varsayılan uzunluk üst sınırını alır veya ayarlar. |
DefaultMaximumResponseHeadersLength |
Özelliği için varsayılanı MaximumResponseHeadersLength alır veya ayarlar. |
Expect |
HTTP üst bilgisinin |
HaveResponse |
Bir İnternet kaynağından yanıt alınıp alınmadığını gösteren bir değer alır. |
Headers |
HTTP üst bilgilerini oluşturan ad/değer çiftlerinin koleksiyonunu belirtir. |
Host |
İstek URI'sinden bağımsız bir HTTP isteğinde kullanılacak Konak üst bilgi değerini alır veya ayarlar. |
IfModifiedSince |
HTTP üst bilgisinin |
ImpersonationLevel |
Geçerli istek için kimliğe bürünme düzeyini alır veya ayarlar. (Devralındığı yer: WebRequest) |
KeepAlive |
İnternet kaynağına kalıcı bir bağlantı yapılıp yapılmayacağını belirten bir değer alır veya ayarlar. |
MaximumAutomaticRedirections |
İsteğin izlediği en fazla yeniden yönlendirme sayısını alır veya ayarlar. |
MaximumResponseHeadersLength |
Yanıt üst bilgilerinin izin verilen uzunluk üst sınırını alır veya ayarlar. |
MediaType |
İsteğin medya türünü alır veya ayarlar. |
Method |
İstek için yöntemini alır veya ayarlar. |
Pipelined |
İsteğin İnternet kaynağına işlem hattı oluşturup oluşturmayacağını belirten bir değer alır veya ayarlar. |
PreAuthenticate |
İstekle yetkilendirme üst bilgisinin gönderilip gönderilmeydiğini belirten bir değer alır veya ayarlar. |
PreAuthenticate |
Alt sınıfta geçersiz kılındığında, isteğin ön kimlik doğrulaması yapılıp yapılmayacağını belirtir. (Devralındığı yer: WebRequest) |
ProtocolVersion |
İstek için kullanılacak HTTP sürümünü alır veya ayarlar. |
Proxy |
İstek için ara sunucu bilgilerini alır veya ayarlar. |
Proxy |
Bir alt sınıfta geçersiz kılındığında, bu İnternet kaynağına erişmek için kullanılacak ağ ara sunucusunu alır veya ayarlar. (Devralındığı yer: WebRequest) |
ReadWriteTimeout |
Akışa yazarken veya akıştan okurken milisaniye cinsinden zaman aşımını alır veya ayarlar. |
Referer |
HTTP üst bilgisinin |
RequestUri |
İsteğin özgün Tekdüzen Kaynak Tanımlayıcısını (URI) alır. |
SendChunked |
Segmentlerdeki verilerin İnternet kaynağına gönderilip gönderilmeydiğini belirten bir değer alır veya ayarlar. |
ServerCertificateValidationCallback |
Sunucu sertifikasını doğrulamak için bir geri çağırma işlevi alır veya ayarlar. |
ServicePoint |
İstek için kullanılacak hizmet noktasını alır. |
SupportsCookieContainer |
İsteğin için destek sağlayıp sağlamadığını belirten bir CookieContainerdeğer alır. |
Timeout |
ve GetRequestStream() yöntemleri için GetResponse() milisaniye cinsinden zaman aşımı değerini alır veya ayarlar. |
Timeout |
İstek zaman aşımına uğramadan önce milisaniye cinsinden süreyi alır veya ayarlar. (Devralındığı yer: WebRequest) |
TransferEncoding |
HTTP üst bilgisinin |
UnsafeAuthenticatedConnectionSharing |
Yüksek hızlı NTLM kimliği doğrulanmış bağlantı paylaşımına izin verilip verilmeyeceğini belirten bir değer alır veya ayarlar. |
UseDefaultCredentials |
Varsayılan kimlik bilgilerinin isteklerle gönderilip gönderilmediğini denetleyebilen bir Boolean değer alır veya ayarlar. |
UseDefaultCredentials |
Bir alt sınıfta geçersiz kılındığında, isteklerle gönderilip gönderilmeydiğini DefaultCredentials denetleyen bir Boolean değer alır veya ayarlar. (Devralındığı yer: WebRequest) |
UserAgent |
HTTP üst bilgisinin |
Yöntemler
Abort() |
bir İnternet kaynağına yönelik isteği iptal eder. |
AddRange(Int32) |
İstenen verilerin başından veya sonundan belirli bir aralık için isteğe bayt aralığı üst bilgisi ekler. |
AddRange(Int32, Int32) |
Belirtilen aralık için isteğe bir bayt aralığı üst bilgisi ekler. |
AddRange(Int64) |
İstenen verilerin başından veya sonundan belirli bir aralık için isteğe bayt aralığı üst bilgisi ekler. |
AddRange(Int64, Int64) |
Belirtilen aralık için isteğe bir bayt aralığı üst bilgisi ekler. |
AddRange(String, Int32) |
İstenen verilerin başından veya sonundan belirli bir aralık için isteğe Bir Aralık üst bilgisi ekler. |
AddRange(String, Int32, Int32) |
Belirtilen aralık için bir isteğe aralık üst bilgisi ekler. |
AddRange(String, Int64) |
İstenen verilerin başından veya sonundan belirli bir aralık için isteğe Bir Aralık üst bilgisi ekler. |
AddRange(String, Int64, Int64) |
Belirtilen aralık için bir isteğe aralık üst bilgisi ekler. |
BeginGetRequestStream(AsyncCallback, Object) |
Bir nesnenin veri yazmak için kullanması için zaman uyumsuz bir Stream istek başlatır. |
BeginGetResponse(AsyncCallback, Object) |
Bir İnternet kaynağına zaman uyumsuz istek başlatır. |
CreateObjRef(Type) |
Uzak bir nesneyle iletişim kurmak için kullanılan bir ara sunucu oluşturmak için gereken tüm ilgili bilgileri içeren bir nesne oluşturur. (Devralındığı yer: MarshalByRefObject) |
EndGetRequestStream(IAsyncResult) |
Bir nesnenin veri yazmak için kullanması için zaman uyumsuz isteği Stream sonlandırır. |
EndGetRequestStream(IAsyncResult, TransportContext) |
Bir nesnenin veri yazmak için kullanması için zaman uyumsuz bir Stream isteği sonlandırır ve akışla ilişkili çıkışı TransportContext oluşturur. |
EndGetResponse(IAsyncResult) |
İnternet kaynağına yönelik zaman uyumsuz isteği sonlandırır. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Örnek için bir WebRequest karma değeri döndürür. |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetLifetimeService() |
Geçersiz.
Bu örnek için yaşam süresi ilkesini denetleen geçerli yaşam süresi hizmet nesnesini alır. (Devralındığı yer: MarshalByRefObject) |
GetObjectData(SerializationInfo, StreamingContext) |
Geçersiz.
Geçersiz.
Geçersiz.
hedef nesneyi seri hale getirmek için gereken verilerle doldurur SerializationInfo . |
GetObjectData(SerializationInfo, StreamingContext) |
Geçersiz.
hedef nesneyi seri hale getirmek için gereken verilerle doldurur SerializationInfo . (Devralındığı yer: WebRequest) |
GetRequestStream() |
İstek verilerini yazmak için kullanılacak nesneyi Stream alır. |
GetRequestStream() |
Alt sınıfta geçersiz kılındığında, İnternet kaynağına veri yazmak için bir Stream döndürür. (Devralındığı yer: WebRequest) |
GetRequestStream(TransportContext) |
İstek verilerini yazmak için kullanılacak bir Stream nesnesi alır ve akışla ilişkili çıktısını TransportContext alır. |
GetRequestStreamAsync() |
Bir alt sınıfta geçersiz kılındığında, zaman uyumsuz bir işlem olarak İnternet kaynağına veri yazmak için bir döndürür Stream . (Devralındığı yer: WebRequest) |
GetResponse() |
İnternet kaynağından bir yanıt döndürür. |
GetResponse() |
Bir alt sınıfta geçersiz kılındığında, İnternet isteğine bir yanıt döndürür. (Devralındığı yer: WebRequest) |
GetResponseAsync() |
Bir alt sınıfta geçersiz kılındığında, zaman uyumsuz bir işlem olarak İnternet isteğine bir yanıt döndürür. (Devralındığı yer: WebRequest) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
InitializeLifetimeService() |
Geçersiz.
Bu örneğin yaşam süresi ilkesini denetlemek için bir yaşam süresi hizmet nesnesi alır. (Devralındığı yer: MarshalByRefObject) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
MemberwiseClone(Boolean) |
Geçerli MarshalByRefObject nesnenin sığ bir kopyasını oluşturur. (Devralındığı yer: MarshalByRefObject) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Belirtik Arabirim Kullanımları
ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Geçersiz.
Geçersiz.
Geçersiz.
hedef nesneyi seri hale getirmek için gereken verilerle doldurur SerializationInfo . |
Uzantı Metotları
GetRequestMetadata(HttpWebRequest) |
Telemetri amacıyla kullanılacak giden isteklerin meta verilerini alır. |
SetRequestMetadata(HttpWebRequest, RequestMetadata) |
Telemetri amacıyla kullanılacak giden isteklerin meta verilerini ayarlar. |
Şunlara uygulanır
Ayrıca bkz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin