HttpWorkerRequest 類別

定義

此抽象類別定義了 ASP.NET 管理程式碼用來處理請求的基礎工作者方法與列舉。

public ref class HttpWorkerRequest abstract
[System.Runtime.InteropServices.ComVisible(false)]
public abstract class HttpWorkerRequest
[<System.Runtime.InteropServices.ComVisible(false)>]
type HttpWorkerRequest = class
Public MustInherit Class HttpWorkerRequest
繼承
HttpWorkerRequest
衍生
屬性

備註

大多數情況下,你的程式碼不會直接處理 HttpWorkerRequest ,因為請求和回應資料是透過 HttpRequest and HttpResponse 類別暴露的。 部分內部 ASP.NET 類別會擴充此類別。 如果你的程式碼實作了自己的主機環境,就需要擴充這個類別來呼叫這個 ProcessRequest 方法。 此外,你的程式碼還可以建立一個導出類別,用於在特定應用程式中執行子請求,並將其實例傳遞給 ProcessRequest。 在這種情況下,衍生類別應該保留對當前 HttpWorkerRequest 類別的參考,並將大部分方法委派給它。

建構函式

名稱 Description
HttpWorkerRequest()

初始化 HttpWorkerRequest 類別的新執行個體。

欄位

名稱 Description
HeaderAccept

指定 HTTP 標頭的 Accept 索引號。

HeaderAcceptCharset

指定 HTTP 標頭的 Accept-Charset 索引號。

HeaderAcceptEncoding

指定 HTTP 標頭的 Accept-Encoding 索引號。

HeaderAcceptLanguage

指定 HTTP 標頭的 Accept-Language 索引號。

HeaderAcceptRanges

指定 HTTP 標頭的 Accept-Ranges 索引號。

HeaderAge

指定 HTTP 標頭的 Age 索引號。

HeaderAllow

指定 HTTP 標頭的 Allow 索引號。

HeaderAuthorization

指定 HTTP 標頭的 Authorization 索引號。

HeaderCacheControl

代表 HTTP Cache-Control HTTP 標頭的索引。

HeaderConnection

指定 HTTP 標頭的 Connection 索引號。

HeaderContentEncoding

指定 HTTP 標頭的 Content-Encoding 索引號。

HeaderContentLanguage

指定 HTTP 標頭的 Content-Language 索引號。

HeaderContentLength

指定 HTTP 標頭的 Content-Length 索引號。

HeaderContentLocation

指定 HTTP 標頭的 Content-Location 索引號。

HeaderContentMd5

指定 HTTP 標頭的 Content-MD5 索引號。

HeaderContentRange

指定 HTTP 標頭的 Content-Range 索引號。

HeaderContentType

指定 HTTP 標頭的 Content-Type 索引號。

HeaderCookie

指定 HTTP 標頭的 Cookie 索引號。

HeaderDate

指定 HTTP 標頭的 Date 索引號。

HeaderEtag

指定 HTTP 標頭的 ETag 索引號。

HeaderExpect

指定 HTTP 標頭的 Except 索引號。

HeaderExpires

指定 HTTP 標頭的 Expires 索引號。

HeaderFrom

指定 HTTP 標頭的 From 索引號。

HeaderHost

指定 HTTP 標頭的 Host 索引號。

HeaderIfMatch

指定 HTTP 標頭的 If-Match 索引號。

HeaderIfModifiedSince

指定 HTTP 標頭的 If-Modified-Since 索引號。

HeaderIfNoneMatch

指定 HTTP 標頭的 If-None-Match 索引號。

HeaderIfRange

指定 HTTP 標頭的 If-Range 索引號。

HeaderIfUnmodifiedSince

指定 HTTP 標頭的 If-Unmodified-Since 索引號。

HeaderKeepAlive

指定 HTTP 標頭的 Keep-Alive 索引號。

HeaderLastModified

指定 HTTP 標頭的 Last-Modified 索引號。

HeaderLocation

指定 HTTP 標頭的 Location 索引號。

HeaderMaxForwards

指定 HTTP 標頭的 Max-Forwards 索引號。

HeaderPragma

指定 HTTP 標頭的 Pragma 索引號。

HeaderProxyAuthenticate

指定 HTTP 標頭的 Proxy-Authenticate 索引號。

HeaderProxyAuthorization

指定 HTTP 標頭的 Proxy-Authorization 索引號。

HeaderRange

指定 HTTP 標頭的 Range 索引號。

HeaderReferer

指定 HTTP 標頭的 Referer 索引號。

HeaderRetryAfter

指定 HTTP 標頭的 Retry-After 索引號。

HeaderServer

指定 HTTP 標頭的 Server 索引號。

HeaderSetCookie

指定 HTTP 標頭的 Set-Cookie 索引號。

HeaderTe

指定 HTTP 標頭的 TE 索引號。

HeaderTrailer

指定 HTTP 標頭的 Trailer 索引號。

HeaderTransferEncoding

指定 HTTP 標頭的 Transfer-Encoding 索引號。

HeaderUpgrade

指定 HTTP 標頭的 Upgrade 索引號。

HeaderUserAgent

指定 HTTP 標頭的 User-Agent 索引號。

HeaderVary

指定 HTTP 標頭的 Vary 索引號。

HeaderVia

指定 HTTP 標頭的 Via 索引號。

HeaderWarning

指定 HTTP 標頭的 Warning 索引號。

HeaderWwwAuthenticate

指定 HTTP 標頭的 WWW-Authenticate 索引號。

ReasonCachePolicy

說明請求的理由。

ReasonCacheSecurity

說明請求的理由。

ReasonClientDisconnect

說明請求的理由。

ReasonDefault

說明請求的理由。 預設值為 ReasonResponseCacheMiss

ReasonFileHandleCacheMiss

說明請求的理由。

ReasonResponseCacheMiss

說明請求的理由。

RequestHeaderMaximum

指定 HTTP 請求標頭的 Maximum 索引號。

ResponseHeaderMaximum

指定 HTTP 回應標頭的 Maximum 索引號。

屬性

名稱 Description
MachineConfigPath

取得完整的實體路徑到 Machine.config 檔案。

MachineInstallDirectory

取得安裝 ASP.NET 二進位檔的目錄的實體路徑。

RequestTraceIdentifier

取得對應的 Windows 事件追蹤追蹤 ID,針對目前請求。

RootWebConfigPath

取得根 Web.config 檔案的完整物理路徑。

SupportsAsyncFlush

會得到一個值,表示是否支援非同步沖洗操作。

SupportsAsyncRead

會獲得一個值,表示是否支援非同步讀取操作。

方法

名稱 Description
BeginFlush(AsyncCallback, Object)

將目前緩衝的回應傳送給用戶端。

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

開始對請求實體實體進行非同步讀取操作。

CloseConnection()

終止與客戶端的連線。

EndFlush(IAsyncResult)

等待即將完成的非同步沖洗操作。

EndOfRequest()

執行時用來通知 HttpWorkerRequest 目前請求處理完成。

EndRead(IAsyncResult)

等待即將完成的非同步讀取操作。

Equals(Object)

判斷指定的 物件是否等於目前的物件。

(繼承來源 Object)
FlushResponse(Boolean)

將所有待處理的回應資料傳送給用戶端。

GetAppPath()

回傳目前執行中的伺服器應用程式的虛擬路徑。

GetAppPathTranslated()

回傳目前執行中的伺服器應用程式的物理路徑。

GetAppPoolID()

當在衍生類別中覆寫時,會回傳當前 URL 的應用程式池 ID。

GetBytesRead()

取得從用戶端讀取的位元組數。

GetClientCertificate()

當在衍生類別中被覆寫時,會從客戶端發出的請求中取得 X.509 標準中指定的認證欄位。

GetClientCertificateBinaryIssuer()

取得憑證發行者,二進位格式。

GetClientCertificateEncoding()

當在衍生類別中覆寫時,會回傳 Encoding 客戶端憑證所編碼的物件。

GetClientCertificatePublicKey()

當在衍生類別中覆寫時,會獲得 PublicKey 與客戶端憑證相關的物件。

GetClientCertificateValidFrom()

當在衍生類別中被覆寫時,會取得憑證生效的日期。 日期會因國際場合而異。

GetClientCertificateValidUntil()

會拿到證書到期日。

GetConnectionID()

當在衍生類別中覆寫時,會回傳目前連線的 ID。

GetFilePath()

當在衍生類別中覆寫時,會回傳到所請求的 URI 的虛擬路徑。

GetFilePathTranslated()

回傳實體檔案路徑至所請求的 URI(並將虛擬路徑轉換為實體路徑:例如,「/proj1/page.aspx」轉為「c:\dir\page.aspx」)

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetHttpVerbName()

回傳請求標頭指定的成員。

GetHttpVersion()

提供請求的 HTTP 版本存取權(例如「HTTP/1.1」)。

GetKnownRequestHeader(Int32)

回傳對應指定索引的標準 HTTP 請求標頭。

GetKnownRequestHeaderIndex(String)

回傳指定 HTTP 請求標頭的索引號。

GetKnownRequestHeaderName(Int32)

回傳指定的 HTTP 請求標頭名稱。

GetKnownResponseHeaderIndex(String)

回傳指定 HTTP 回應標頭的索引號。

GetKnownResponseHeaderName(Int32)

回傳指定的 HTTP 回應標頭名稱。

GetLocalAddress()

提供對請求標頭指定成員的存取。

GetLocalPort()

提供對請求標頭指定成員的存取。

GetPathInfo()

回傳具有 URL 副檔名的資源的額外路徑資訊。 也就是說,對於路徑 /virdir/page.html/tail, GetPathInfo 值為 /tail。

GetPreloadedEntityBody()

回傳已讀取的 HTTP 請求主體部分。

GetPreloadedEntityBody(Byte[], Int32)

取得目前已透過指定的緩衝區資料和位元組偏移量讀取的 HTTP 請求主體部分。

GetPreloadedEntityBodyLength()

取得目前已讀取的 HTTP 請求主體部分的長度。

GetProtocol()

當在派生類別中覆寫時,會回傳 HTTP 協定(HTTP 或 HTTPS)。

GetQueryString()

回傳請求 URL 中指定的查詢字串。

GetQueryStringRawBytes()

當在派生類別中覆寫時,會以位元組陣列的形式回傳回應查詢字串。

GetRawUrl()

回傳請求標頭中包含的 URL 路徑,並附加查詢字串。

GetRemoteAddress()

提供對請求標頭指定成員的存取。

GetRemoteName()

當在衍生類別中覆寫時,會回傳客戶端電腦的名稱。

GetRemotePort()

提供對請求標頭指定成員的存取。

GetRequestReason()

當在衍生類別中被覆寫時,會回傳請求的理由。

GetServerName()

當在派生類別中覆寫時,會回傳本地伺服器的名稱。

GetServerVariable(String)

從與請求相關的伺服器變數字典中回傳一個伺服器變數。

GetStatusDescription(Int32)

回傳一個描述指定 HTTP 狀態碼名稱的字串。

GetTotalEntityBodyLength()

取得整個 HTTP 請求體的長度。

GetType()

取得目前實例的 Type

(繼承來源 Object)
GetUnknownRequestHeader(String)

回傳非標準 HTTP 請求標頭值。

GetUnknownRequestHeaders()

取得所有非標準 HTTP 標頭名稱與值對。

GetUriPath()

回傳虛擬路徑至所請求的 URI。

GetUrlContextID()

當在衍生類別中覆寫時,會回傳當前連線的上下文 ID。

GetUserToken()

當在衍生類別中被覆寫時,會回傳客戶端的模擬標記。

GetVirtualPathToken()

取得請求虛擬路徑的模擬令牌。

HasEntityBody()

回傳一個值,指示請求是否包含主體資料。

HeadersSent()

回傳一個值,表示目前請求是否已向用戶端發送 HTTP 回應標頭。

IsClientConnected()

回傳一個值,表示用戶端連線是否仍在運作中。

IsEntireEntityBodyIsPreloaded()

回傳一個值,表示所有請求資料是否可用,且用戶端不再需要讀取。

IsSecure()

回傳一個值,表示連線是否使用 SSL。

MapPath(String)

回傳對應於指定虛擬路徑的物理路徑。

MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
ReadEntityBody(Byte[], Int32, Int32)

在未預載時,透過指定的緩衝區讀取請求資料、位元組偏移量及最大位元組。

ReadEntityBody(Byte[], Int32)

讀取用戶端的請求資料(當未預載時)。

SendCalculatedContentLength(Int32)

對於大小不大於 2 GB 的訊息主體,會在 Content-Length 回應中加入 HTTP 標頭。

SendCalculatedContentLength(Int64)

對於超過 2 GB 的訊息主體,會在 Content-Length 回應中加入 HTTP 標頭。

SendKnownResponseHeader(Int32, String)

在回應中加入標準的 HTTP 標頭。

SendResponseFromFile(IntPtr, Int64, Int64)

將指定檔案的內容加入回應,並指定檔案起始位置及要傳送的位元組數。

SendResponseFromFile(String, Int64, Int64)

將指定檔案的內容加入回應,並指定檔案起始位置及要傳送的位元組數。

SendResponseFromMemory(Byte[], Int32)

將指定數量的位元組陣列加入回應。

SendResponseFromMemory(IntPtr, Int32)

將指定數量的記憶體區塊加入回應。

SendStatus(Int32, String)

指定回應的 HTTP 狀態碼及狀態描述,例如 SendStatus(200, "Ok")

SendUnknownResponseHeader(String, String)

在回應中加入非標準的 HTTP 標頭。

SetEndOfSendNotification(HttpWorkerRequest+EndOfSendNotification, Object)

當所有回應資料傳送完畢時,會註冊以接收可選通知。

ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)

適用於

另請參閱