最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#中的HttpWebRequest類介紹

 更新時(shí)間:2022年01月15日 09:34:45   作者:Now,DayBreak  
本文詳細(xì)講解了C#中的HttpWebRequest類,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

提供 WebRequest 類的 HTTP 特定的實(shí)現(xiàn)。

繼承層次結(jié)構(gòu) System.Object → System.MarshalByRefObject →  System.Net.WebRequest →  System.Net.HttpWebRequest。

命名空間:System.Net ; 程序集:System(在 System.dll 中)

C#語(yǔ)法:

[SerializableAttribute]

public class HttpWebRequest : WebRequest, ISerializable

HttpWebRequest 類型公開(kāi)以下成員。

1、構(gòu)造函數(shù)

名稱說(shuō)明
HttpWebRequest()已過(guò)時(shí)。初始化 HttpWebRequest 類的新實(shí)例。
HttpWebRequest(SerializationInfo, StreamingContext)已過(guò)時(shí)。從 SerializationInfo和 StreamingContext 類的指定實(shí)例初始化 HttpWebRequest 類的新實(shí)例。

2、屬性

名稱說(shuō)明
Accept獲取或設(shè)置 Accept HTTP 標(biāo)頭的值。
Address獲取實(shí)際響應(yīng)請(qǐng)求的 Internet 資源的統(tǒng)一資源標(biāo)識(shí)符 (URI)。
AllowAutoRedirect獲取或設(shè)置一個(gè)值,該值指示請(qǐng)求是否應(yīng)跟隨重定向響應(yīng)。
AllowReadStreamBuffering獲取或設(shè)置一個(gè)值,該值指示是否對(duì)從 Internet 資源接收的數(shù)據(jù)進(jìn)行緩沖處理。
AllowWriteStreamBuffering獲取或設(shè)置一個(gè)值,該值指示是否對(duì)發(fā)送到 Internet 資源的數(shù)據(jù)進(jìn)行緩沖處理。
AuthenticationLevel獲取或設(shè)置用于此請(qǐng)求的身份驗(yàn)證和模擬的級(jí)別。 (繼承自 WebRequest。)
AutomaticDecompression獲取或設(shè)置所使用的解壓縮類型。
CachePolicy獲取或設(shè)置此請(qǐng)求的緩存策略。 (繼承自 WebRequest。)
ClientCertificates獲取或設(shè)置與此請(qǐng)求關(guān)聯(lián)的安全證書(shū)集合。
Connection獲取或設(shè)置 Connection HTTP 標(biāo)頭的值。
ConnectionGroupName獲取或設(shè)置請(qǐng)求的連接組的名稱。 (重寫(xiě) WebRequest.ConnectionGroupName。)
ContentLength獲取或設(shè)置 Content-lengthHTTP 標(biāo)頭。 (重寫(xiě) WebRequest.ContentLength。)
ContentType獲取或設(shè)置 Content-type HTTP 標(biāo)頭的值。 (重寫(xiě) WebRequest.ContentType。)
ContinueDelegate獲取或設(shè)置當(dāng)從 Internet 資源接收到 HTTP 100 持續(xù)響應(yīng)時(shí)調(diào)用的委托方法。
ContinueTimeout獲取或設(shè)置在接收到來(lái)自服務(wù)器的 100 次連續(xù)響應(yīng)之前要等待的超時(shí)(以毫秒為單位)。
CookieContainer獲取或設(shè)置與此請(qǐng)求關(guān)聯(lián)的 cookie。
CreatorInstance已過(guò)時(shí)。當(dāng)在子類中重寫(xiě)時(shí),獲取從 IWebRequestCreate 類派生的工廠對(duì)象,該類用于創(chuàng)建為生成對(duì)指定 URI 的請(qǐng)求而實(shí)例化的 WebRequest。 (繼承自 WebRequest。)
Credentials獲取或設(shè)置請(qǐng)求的身份驗(yàn)證信息。 (重寫(xiě) WebRequest.Credentials。)
Date獲取或設(shè)置要在 HTTP 請(qǐng)求中使用的 Date HTTP 標(biāo)頭值。
DefaultCachePolicy獲取或設(shè)置此請(qǐng)求的默認(rèn)緩存策略。
DefaultMaximumErrorResponseLength獲取或設(shè)置 HTTP 錯(cuò)誤響應(yīng)的默認(rèn)最大長(zhǎng)度。
DefaultMaximumResponseHeadersLength獲取或設(shè)置 MaximumResponseHeadersLength 屬性的默認(rèn)值。
Expect獲取或設(shè)置 Expect HTTP 標(biāo)頭的值。
HaveResponse獲取一個(gè)值,該值指示是否收到了來(lái)自 Internet 資源的響應(yīng)。
Headers指定構(gòu)成 HTTP 標(biāo)頭的名稱/值對(duì)的集合。 (重寫(xiě) WebRequest.Headers。)
Host獲取或設(shè)置要在 HTTP 請(qǐng)求中獨(dú)立于請(qǐng)求 URI 使用的 Host 標(biāo)頭值。
IfModifiedSince獲取或設(shè)置 If-Modified-Since HTTP 標(biāo)頭的值。
ImpersonationLevel獲取或設(shè)置當(dāng)前請(qǐng)求的模擬級(jí)別。 (繼承自 WebRequest。)
KeepAlive獲取或設(shè)置一個(gè)值,該值指示是否與 Internet 資源建立持久性連接。
MaximumAutomaticRedirections獲取或設(shè)置請(qǐng)求將跟隨的重定向的最大數(shù)目。
MaximumResponseHeadersLength獲取或設(shè)置響應(yīng)標(biāo)題允許的最大長(zhǎng)度。
MediaType獲取或設(shè)置請(qǐng)求的媒體類型。
Method獲取或設(shè)置請(qǐng)求的方法。 (重寫(xiě) WebRequest.Method。)
Pipelined獲取或設(shè)置一個(gè)值,該值指示是否通過(guò)管線將請(qǐng)求傳輸?shù)?Internet 資源。
PreAuthenticate獲取或設(shè)置一個(gè)值,該值指示是否隨請(qǐng)求發(fā)送一個(gè)身份驗(yàn)證標(biāo)頭。 (重寫(xiě) WebRequest.PreAuthenticate。)
ProtocolVersion獲取或設(shè)置用于請(qǐng)求的 HTTP 版本。
Proxy獲取或設(shè)置請(qǐng)求的代理信息。 (重寫(xiě) WebRequest.Proxy。)
ReadWriteTimeout獲取或設(shè)置寫(xiě)入或讀取流時(shí)的超時(shí)(以毫秒為單位)。
Referer獲取或設(shè)置 Referer HTTP 標(biāo)頭的值。
RequestUri獲取請(qǐng)求的原始統(tǒng)一資源標(biāo)識(shí)符 (URI)。 (重寫(xiě) WebRequest.RequestUri。)
SendChunked獲取或設(shè)置一個(gè)值,該值指示是否將數(shù)據(jù)分段發(fā)送到 Internet 資源。
ServerCertificateValidationCallback獲取或設(shè)置用于驗(yàn)證服務(wù)器證書(shū)的回調(diào)函數(shù)。
ServicePoint獲取用于請(qǐng)求的服務(wù)點(diǎn)。
SupportsCookieContainer獲取一個(gè)值,該值指示請(qǐng)求是否為 CookieContainer 提供支持。
Timeout獲取或設(shè)置 GetResponse 和 GetRequestStream 方法的超時(shí)值(以毫秒為單位)。 (重寫(xiě) WebRequest.Timeout。)
TransferEncoding獲取或設(shè)置 Transfer-encoding HTTP 標(biāo)頭的值。
UnsafeAuthenticatedConnectionSharing獲取或設(shè)置一個(gè)值,該值指示是否允許經(jīng)過(guò)高速 NTLM 身份驗(yàn)證的連接共享。
UseDefaultCredentials獲取或設(shè)置一個(gè) Boolean 值,該值控制默認(rèn)憑據(jù)是否隨請(qǐng)求一起發(fā)送。 (重寫(xiě) WebRequest.UseDefaultCredentials。)
UserAgent獲取或設(shè)置 User-agent HTTP 標(biāo)頭的值。

3、方法

名稱說(shuō)明
Abort取消對(duì) Internet 資源的請(qǐng)求。 (重寫(xiě) WebRequest.Abort()。)
AddRange(Int32)向請(qǐng)求添加從請(qǐng)求數(shù)據(jù)的開(kāi)始處或結(jié)束處的特定范圍的字節(jié)范圍標(biāo)頭。
AddRange(Int64)向請(qǐng)求添加從請(qǐng)求數(shù)據(jù)的開(kāi)始處或結(jié)束處的特定范圍的字節(jié)范圍標(biāo)頭。
AddRange(Int32, Int32)向請(qǐng)求添加指定范圍的字節(jié)范圍標(biāo)頭。
AddRange(Int64, Int64)向請(qǐng)求添加指定范圍的字節(jié)范圍標(biāo)頭。
AddRange(String, Int32)向請(qǐng)求添加從請(qǐng)求數(shù)據(jù)的開(kāi)始處或結(jié)束處計(jì)算的特定范圍的 Range 標(biāo)頭。
AddRange(String, Int64)向請(qǐng)求添加從請(qǐng)求數(shù)據(jù)的開(kāi)始處或結(jié)束處計(jì)算的特定范圍的 Range 標(biāo)頭。
AddRange(String, Int32, Int32)向請(qǐng)求添加指定范圍的范圍標(biāo)頭。
AddRange(String, Int64, Int64)向請(qǐng)求添加指定范圍的范圍標(biāo)頭。
BeginGetRequestStream開(kāi)始對(duì)用來(lái)寫(xiě)入數(shù)據(jù)的 Stream 對(duì)象的異步請(qǐng)求。 (重寫(xiě) WebRequest.BeginGetRequestStream(AsyncCallback, Object)。)
BeginGetResponse開(kāi)始對(duì) Internet 資源的異步請(qǐng)求。 (重寫(xiě) WebRequest.BeginGetResponse(AsyncCallback, Object)。)
CreateObjRef創(chuàng)建一個(gè)對(duì)象,該對(duì)象包含生成用于與遠(yuǎn)程對(duì)象進(jìn)行通信的代理所需的全部相關(guān)信息。 (繼承自 MarshalByRefObject。)
EndGetRequestStream(IAsyncResult)結(jié)束對(duì)用于寫(xiě)入數(shù)據(jù)的 Stream 對(duì)象的異步請(qǐng)求。 (重寫(xiě) WebRequest.EndGetRequestStream(IAsyncResult)。)
EndGetRequestStream(IAsyncResult,TransportContext)結(jié)束對(duì)用于寫(xiě)入數(shù)據(jù)的 Stream 對(duì)象的異步請(qǐng)求,并輸出與該流關(guān)聯(lián)的 TransportContext。
EndGetResponse結(jié)束對(duì) Internet 資源的異步請(qǐng)求。 (重寫(xiě) WebRequest.EndGetResponse(IAsyncResult)。)
Equals(Object)確定指定的對(duì)象是否等于當(dāng)前對(duì)象。 (繼承自 Object。)
Finalize允許對(duì)象在“垃圾回收”回收之前嘗試釋放資源并執(zhí)行其他清理操作。 (繼承自 Object。)
GetHashCode作為默認(rèn)哈希函數(shù)。 (繼承自 Object。)
GetLifetimeService檢索控制此實(shí)例的生存期策略的當(dāng)前生存期服務(wù)對(duì)象。 (繼承自 MarshalByRefObject。)
GetObjectData基礎(chǔ)結(jié)構(gòu)。使用序列化目標(biāo)對(duì)象所需的數(shù)據(jù)填充 SerializationInfo。 (重寫(xiě) WebRequest.GetObjectData(SerializationInfo, StreamingContext)。)
GetRequestStream()獲取用于寫(xiě)入請(qǐng)求數(shù)據(jù)的 Stream 對(duì)象。 (重寫(xiě) WebRequest.GetRequestStream()。)
GetRequestStream(TransportContext)獲取用于寫(xiě)入請(qǐng)求數(shù)據(jù)的 Stream 對(duì)象,并輸出與該流關(guān)聯(lián)的 TransportContext。
GetRequestStreamAsync當(dāng)在子類中被重寫(xiě)時(shí),將用于寫(xiě)入數(shù)據(jù)的 Stream 作為異步操作返回到 Internet 資源。 (繼承自 WebRequest。)
GetResponse返回來(lái)自 Internet 資源的響應(yīng)。 (重寫(xiě) WebRequest.GetResponse()。)
GetResponseAsync當(dāng)在子類中被重寫(xiě)時(shí),將作為異步操作返回對(duì) Internet 請(qǐng)求的響應(yīng)。 (繼承自 WebRequest。)
GetType獲取當(dāng)前實(shí)例的 Type。 (繼承自 Object。)
InitializeLifetimeService獲取控制此實(shí)例的生存期策略的生存期服務(wù)對(duì)象。 (繼承自 MarshalByRefObject。)
MemberwiseClone()創(chuàng)建當(dāng)前 Object 的淺表副本。 (繼承自 Object。)
MemberwiseClone(Boolean)創(chuàng)建當(dāng)前 MarshalByRefObject 對(duì)象的淺表副本。 (繼承自 MarshalByRefObject。)
ToString返回表示當(dāng)前對(duì)象的字符串。 (繼承自 Object。)

4、顯示接口實(shí)現(xiàn)

名稱說(shuō)明
ISerializable.GetObjectData基礎(chǔ)結(jié)構(gòu)。使用將目標(biāo)對(duì)象序列化所需的數(shù)據(jù)填充 SerializationInfo。

5、備注

HttpWebRequest類對(duì)WebRequest中定義的屬性和方法提供支持,也對(duì)使用戶能夠直接與使用 HTTP 的服務(wù)器交互的附加屬性和方法提供支持。

不要使用HttpWebRequest 構(gòu)造函數(shù)。使用 WebRequest.Create方法初始化新的 HttpWebRequest 對(duì)象。如果統(tǒng)一資源標(biāo)識(shí)符 (URI) 的方案是 http:// 或 https://,則 Create 返回 HttpWebRequest 對(duì)象。 

GetResponse方法向RequestUri屬性中指定的資源發(fā)出同步請(qǐng)求并返回包含該響應(yīng)的HttpWebResponse??梢允褂?BeginGetResponse 和 EndGetResponse 方法對(duì)資源發(fā)出異步請(qǐng)求。 

當(dāng)要向資源發(fā)送數(shù)據(jù)時(shí),GetRequestStream 方法返回用于發(fā)送數(shù)據(jù)的 Stream 對(duì)象。BeginGetRequestStream和EndGetRequestStream方法提供對(duì)發(fā)送數(shù)據(jù)流的異步訪問(wèn)。 

對(duì)于使用 HttpWebRequest 的客戶端驗(yàn)證身份,客戶端證書(shū)必須安裝在當(dāng)前用戶的“我的證書(shū)”存儲(chǔ)區(qū)中。

如果在訪問(wèn)資源時(shí)發(fā)生錯(cuò)誤,則 HttpWebRequest 類將引發(fā) WebException。WebException.Status 屬性包含指示錯(cuò)誤源的 WebExceptionStatus 值。  當(dāng) WebException.Status 為 WebExceptionStatus.ProtocolError 時(shí),Response 屬性包含從資源接收的 HttpWebResponse。 

HttpWebRequest將發(fā)送到 Internet 資源的公共 HTTP 標(biāo)頭值公開(kāi)為屬性,由方法或系統(tǒng)設(shè)置;下表包含完整列表。可以將 Headers 屬性中的其他標(biāo)頭設(shè)置為名稱/值對(duì)。注意,服務(wù)器和緩存在請(qǐng)求期間可能會(huì)更改或添加標(biāo)頭。 

下表列出了由屬性或方法設(shè)置或由系統(tǒng)設(shè)置的 HTTP 標(biāo)頭。

Header

設(shè)置方

Accept

由 Accept 屬性設(shè)置。

Connection

由 Connection 屬性和 KeepAlive 屬性設(shè)置。

Content-Length

由 ContentLength 屬性設(shè)置。

Content-Type

由 ContentType 屬性設(shè)置。

Expect

由 Expect 屬性設(shè)置。

日期

由系統(tǒng)設(shè)置為當(dāng)前日期。

主機(jī)

由系統(tǒng)設(shè)置為當(dāng)前主機(jī)信息。

If-Modified-Since

由 IfModifiedSince 屬性設(shè)置。

范圍

由 AddRange 方法設(shè)置。

Referer

由 Referer 屬性設(shè)置。

Transfer-Encoding

由 TransferEncoding 屬性設(shè)置(SendChunked 屬性必須為 true)。

User-Agent

由 UserAgent 屬性設(shè)置。

說(shuō)明

HttpWebRequest   自動(dòng)注冊(cè)。  使用以 http:// 或 https:// 開(kāi)頭的 URI 之前,不需要調(diào)用 RegisterPrefix 方法來(lái)注冊(cè) System.Net.HttpWebRequest。 

本地計(jì)算機(jī)或應(yīng)用程序配置文件可能指定使用默認(rèn)代理。  如果指定了 Proxy 屬性,則 Proxy 屬性中的代理設(shè)置會(huì)重寫(xiě)本地計(jì)算機(jī)或應(yīng)用程序配置文件,并且 HttpWebRequest 實(shí)例將實(shí)用指定的代理設(shè)置。  如果配置文件中未指定代理并且未指定 Proxy 屬性,則 HttpWebRequest 類使用從本地計(jì)算機(jī)上的 Internet Explorer 中繼承的代理設(shè)置。  如果 Internet Explorer 中沒(méi)有代理設(shè)置,請(qǐng)求會(huì)直接發(fā)送到服務(wù)器。

HttpWebRequest   類分析從 Internet Explorer 繼承的且包含通配符的代理忽略列表時(shí)會(huì)與 Internet Explorer 直接分析忽略列表不同。  例如,HttpWebRequest 類將來(lái)自 Internet Explorer 的其中包含“nt*”的忽略列表分析為正則表達(dá)式“nt.$”。  此行為不同于 Internet Explorer 的本機(jī)行為。  因此 URL“http://intxxxxx”將忽略使用 HttpWebRequest 類的代理,但它不會(huì)忽略使用 Internet Explorer 的代理。 

說(shuō)明

Framework 在創(chuàng)建 SSL 會(huì)話時(shí)緩存這些會(huì)話,如果可能,還嘗試對(duì)新請(qǐng)求重用緩存的會(huì)話。  嘗試重用 SSL 會(huì)話時(shí),該框架將使用 ClientCertificates 的第一個(gè)元素(如果有);如果 ClientCertificates 為空,則將嘗試重用匿名會(huì)話。 

說(shuō)明

為安全起見(jiàn),默認(rèn)情況下禁用 Cookie。  如果您希望使用 Cookie,請(qǐng)使用 CookieContainer 屬性啟用 Cookie。 

示例

下面的代碼示例為 URI http://www.contoso.com/. 創(chuàng)建 HttpWebRequest。

HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create("http://www.contoso.com/");?

到此這篇關(guān)于C#中的HttpWebRequest類介紹的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C#?迭代器分部類與索引器詳情

    C#?迭代器分部類與索引器詳情

    這篇文章主要介紹了C#迭代器分部類與索引器詳情,迭代器?迭代器解決的是集合訪問(wèn)的問(wèn)題,提供一種方法順序訪問(wèn)一個(gè)集合對(duì)象中的各個(gè)元素,而不暴露對(duì)象內(nèi)部標(biāo)
    2022-07-07
  • C#使用jQuery實(shí)現(xiàn)無(wú)刷新評(píng)論提交的方法

    C#使用jQuery實(shí)現(xiàn)無(wú)刷新評(píng)論提交的方法

    這篇文章主要介紹了C#使用jQuery實(shí)現(xiàn)無(wú)刷新評(píng)論提交的方法,涉及C#結(jié)合jQuery進(jìn)行Ajax操作的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-05-05
  • C#實(shí)現(xiàn)快速查詢文件的方法

    C#實(shí)現(xiàn)快速查詢文件的方法

    這篇文章介紹了C#實(shí)現(xiàn)快速查詢文件的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • C# 實(shí)現(xiàn)計(jì)算生辰八字

    C# 實(shí)現(xiàn)計(jì)算生辰八字

    生辰八字,簡(jiǎn)稱八字,是指一個(gè)人出生時(shí)的干支歷日期;年月日時(shí)共四柱干支,每柱兩字,合共八個(gè)字,故稱。生辰八字在漢族民俗信仰中占有重要地位,古代漢族星相家據(jù)此推算人的命運(yùn)的好壞。本文我們就來(lái)使用C#來(lái)實(shí)現(xiàn)計(jì)算生辰八字。
    2015-03-03
  • WPF實(shí)現(xiàn)Badge標(biāo)識(shí)的示例代碼

    WPF實(shí)現(xiàn)Badge標(biāo)識(shí)的示例代碼

    這篇文章主要為大家詳細(xì)介紹了WPF如何實(shí)現(xiàn)Badge標(biāo)識(shí),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)或工作有一定幫助,感興趣的小伙伴可以了解一下
    2023-06-06
  • C#獲取硬盤(pán)編號(hào)的方法

    C#獲取硬盤(pán)編號(hào)的方法

    這篇文章主要介紹了C#獲取硬盤(pán)編號(hào)的方法,涉及C#獲取硬件屬性的相關(guān)技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下
    2015-05-05
  • C#中倒計(jì)時(shí)功能的優(yōu)化方法小結(jié)

    C#中倒計(jì)時(shí)功能的優(yōu)化方法小結(jié)

    這篇文章主要為大家詳細(xì)介紹了當(dāng)C#重復(fù)使用一段代碼倒計(jì)時(shí)時(shí),如何使用普通類和靜態(tài)方法,實(shí)現(xiàn)簡(jiǎn)單的代碼封裝性、可擴(kuò)展性、可維護(hù)性,感興趣的可以了解下
    2024-01-01
  • C#中const用法詳解

    C#中const用法詳解

    這篇文章主要介紹了C#中const用法,實(shí)例分析了C#中const的用法及使用技巧,并對(duì)比分析了readonly關(guān)鍵字與const關(guān)鍵字的不同,需要的朋友可以參考下
    2014-11-11
  • 最新評(píng)論

    竹溪县| 章丘市| 沿河| 武隆县| 乌拉特中旗| 锦屏县| 孝义市| 苗栗县| 浑源县| 通辽市| 大兴区| 客服| 海兴县| 石景山区| 商洛市| 黔西县| 神农架林区| 镇平县| 稷山县| 兴义市| 华安县| 沛县| 镇原县| 儋州市| 乌拉特前旗| 高碑店市| 岚皋县| 田阳县| 石景山区| 菏泽市| 时尚| 隆回县| 区。| 新邵县| 阜康市| 德庆县| 乐都县| 临沭县| 双流县| 那曲县| 松江区|