HttpWebRequest.Host 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定主機標頭值,以用於與要求 URI 無關的 HTTP 要求中。
public:
property System::String ^ Host { System::String ^ get(); void set(System::String ^ value); };
public string Host { get; set; }
member this.Host : string with get, set
Public Property Host As String
屬性值
HTTP 要求中的 Host 標頭值。
例外狀況
主機標頭無法設定為 null
。
主機標頭無法設定為無效的值。
在 HttpWebRequest 已經開始傳送之後,無法設定主機標頭。
備註
謹慎
WebRequest
、HttpWebRequest
、ServicePoint
和 WebClient
已經過時,您不應該將它們用於新的開發。 請改用 HttpClient。
Host 屬性可用來設定主機標頭值,以用於與要求 URI 無關的 HTTP 要求中。 Host 屬性可以包含主機名和選擇性埠號碼。 不含埠資訊的主機標頭表示所要求的服務的預設埠(例如 HTTP URL 的埠 80)。
指定主機和埠的格式必須遵循 IETF 所發行RFC2616第 14.23 節中的規則。 符合這些需求,指定埠 8080 的範例會是 Host 屬性的下列值:
www.contoso.com:8080
使用 Host 屬性明確指定自定義主機標頭值也會影響區域快取、Cookie 和驗證。 當應用程式提供特定 URI 前置詞的認證時,應用程式必須確定使用包含主機標頭值的 URI,而不是 URI 中的目標伺服器。 快取資源時所使用的金鑰會使用主機標頭值,而不是要求 URI。 Cookie 會儲存在 CookieContainer 中,並以邏輯方式依伺服器功能變數名稱分組。 如果應用程式指定主機標頭,則此值會當做網域使用。
如果未設定 Host 屬性,則 HTTP 要求中使用的主機標頭值會以要求 URI 為基礎。