共用方式為


SessionStateSection.Cookieless 屬性

定義

取得或設定值,指出是否使用 Cookie 辨認用戶端工作階段。

public:
 property System::Web::HttpCookieMode Cookieless { System::Web::HttpCookieMode get(); void set(System::Web::HttpCookieMode value); };
[System.Configuration.ConfigurationProperty("cookieless")]
public System.Web.HttpCookieMode Cookieless { get; set; }
[<System.Configuration.ConfigurationProperty("cookieless")>]
member this.Cookieless : System.Web.HttpCookieMode with get, set
Public Property Cookieless As HttpCookieMode

屬性值

如果所有要求都視為 Cookieless 則為 true;沒有任何要求視為 Cookieless 則為 false;否則為其中一個 HttpCookieMode 值。 ASP.NET 2.0 版中的預設值為 AutoDetect。 舊版中的預設值為 false

屬性

範例

下列程式代碼範例示範如何取得 Cookieless 屬性。 請參閱類別主題中的 SessionStateSection 程式碼範例,以瞭解如何存取 SessionStateSection 物件。

// Display the current Cookieless property value.
Console.WriteLine("Cookieless: {0}",
  sessionStateSection.Cookieless);
' Display the current Cookieless property value.
Console.WriteLine("Cookieless: {0}", sessionStateSection.Cookieless)

備註

會話狀態有兩種方式可以儲存唯一標識符,將用戶端與伺服器會話產生關聯:將 HTTP Cookie 儲存在用戶端上,或在 URL 中編碼會話標識碼。 將會話標識符儲存在 Cookie 中較為安全,但需要用戶端瀏覽器支援 Cookie。

對於允許不支援 Cookie 的用戶端的應用程式,例如各種行動裝置,會話標識碼可能會儲存在 URL 中。 URL 選項有數個缺點。 它要求網站上的連結是相對的,而且頁面會在具有新查詢字串值的會話開頭重新導向,並在查詢字串中直接公開會話標識元,以便用於安全性攻擊。

只有在需要支援缺少 Cookie 支援的用戶端時,才建議您使用無 Cookie 模式。

工作階段狀態也支援兩個額外的選項: UseDeviceProfileAutoDetect。 前者可讓會話狀態模組根據瀏覽器功能,判斷每個用戶端會使用哪些模式 (Cookie 或無 Cookie) 。 此選項 AutoDetect 會與瀏覽器執行交握,以確認 Cookie 是否可儲存,因此需要額外的要求來判斷。 如果您需要支援無 Cookie 用戶端,強烈建議您只針對 UseDeviceProfile 需要 Cookie 的用戶端使用 來產生無 Cookie URL。

注意

UP。瀏覽器 4.1 或 UP。Browser 3.2 一 Redirect 律會像 SupportsRedirectWithCookie 對象的 屬性值 HttpBrowserCapabilitiesfalse樣,除非 Cookieless 已明確將 Web.config 區段中的 屬性 SessionState 設定為 true

在 ASP.NET 1.1 版中,此設定的選項為 truefalse,但使用 ASP.NET 2.0 時,選項會展開,現在是 AutoDetect 預設設定。 如果您的 Web 應用程式將 Cookieless 屬性設定為布爾值,則 Redirect 這些瀏覽器應該如預期般運作。

適用於

另請參閱