語言

HttpCookie.DomainMatches(String, String) 方法

定義

檢查主機名稱是否屬於網域的工具方法。

[Android.Runtime.Register("domainMatches", "(Ljava/lang/String;Ljava/lang/String;)Z", "")]
public static bool DomainMatches(string? domain, string? host);
[<Android.Runtime.Register("domainMatches", "(Ljava/lang/String;Ljava/lang/String;)Z", "")>]
static member DomainMatches : string * string -> bool

參數

domain
String

要用來檢查主機名稱的網域名稱

host
String

所指的主持人名稱

傳回

true 如果它們的網域匹配; false 如果沒有

屬性

備註

檢查主機名稱是否屬於網域的工具方法。

這個概念在 Cookie 規範中有描述。 要理解這個概念,首先需要定義一些術語: <blockquote> 有效主機名稱 = 主機名稱,若主機名稱包含 dot<br> 和 nbsp;                或 = hostname.local 若非 </blockquote>

主機 A 的網域與主機 B 的網域匹配,條件為: <blockquote><ul><li>他們的主機名稱字串 string-compare 等;or</li><li>A 是 HDN 字串,形式為 NB,其中 N 為非空名稱字串,B 為形式。B',而 B' 是 HDN 字串。 (所以,x.y.com 網域與 .Y.com 匹配,但不匹配 Y.com。)</li></ul></blockquote>

主機不屬於網域(RFC 2965 第 3.3.2 節),條件如下 <:blockquote><ul><li>網域屬性的值沒有嵌入點,且值也不是 .local。</li><li>來自請求主機的有效主機名稱與 Domain 屬性不符。</li><li>請求主機為 HDN(非 IP 位址),形式為 HD,其中 D 是 Domain 屬性的值,H 是包含一個或多個點的字串。</li></ul></blockquote>

範例: <blockquote><ul><li>請求主機 y.x.foo.com Domain=.foo.com Set-Cookie2 會被拒絕,因為 H 是 y.x 且包含一個點。</li><li>請求主機 x.foo.com Set-Cookie2 Domain=.foo.com會被接受。</li><li>帶有 Domain=.com 或 Domain=.com.. 的 Set-Cookie2,總是會被拒絕,因為沒有嵌入點。</li><li>請求-主機的 Domain=.local Set-Cookie2 範例將被接受,因為 request-host 的有效主機名稱為 example.local,且 example.local domain-match .local。</li></ul></blockquote>

Java 文件 java.net.HttpCookie.domainMatches(java.lang.String, java.lang.String)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於