Freigeben über


SessionStateSection.Cookieless Eigenschaft

Definition

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob Cookies verwendet werden, um Clientsitzungen zu identifizieren.

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

Eigenschaftswert

true wenn alle Anforderungen als cookielos behandelt werden oder false wenn keine Anforderungen als cookielos oder einer der HttpCookieMode Werte behandelt werden. Der Standardwert in ASP.NET Version 2.0 lautet AutoDetect. In früheren Versionen war falseder Standardwert .

Attribute

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie die Cookieless Eigenschaft abgerufen wird. Weitere Informationen zum Zugreifen auf das SessionStateSection Objekt finden Sie im Codebeispiel im SessionStateSection Klassenthema.

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

Hinweise

Es gibt zwei Möglichkeiten, wie der Sitzungszustand die eindeutige ID speichern kann, die dem Client eine Serversitzung zuordnet: durch Speichern eines HTTP-Cookies auf dem Client oder durch Codieren der Sitzungs-ID in der URL. Das Speichern der Sitzungs-ID im Cookie ist sicherer, erfordert jedoch, dass der Clientbrowser Cookies unterstützt.

Für Anwendungen, die Clients erlauben, die Cookies nicht unterstützen, z. B. eine Vielzahl mobiler Geräte, kann die Sitzungs-ID in der URL gespeichert werden. Die URL-Option hat mehrere Nachteile. Es erfordert, dass die Links auf der Website relativ sind und die Seite am Anfang der Sitzung mit neuen Abfragezeichenfolgenwerten umgeleitet wird und die Sitzungs-ID direkt in der Abfragezeichenfolge verfügbar macht, wo sie für die Verwendung in einem Sicherheitsangriff aufgenommen werden kann.

Sie werden ermutigt, den cookielosen Modus nur zu verwenden, wenn Sie Clients unterstützen müssen, die keine Cookie-Unterstützung haben.

Der Sitzungszustand unterstützt auch zwei zusätzliche Optionen: UseDeviceProfile und AutoDetect. Das frühere ermöglicht das Sitzungszustandsmodul, anhand der Browserfunktionen zu bestimmen, welcher Modus (Cookie oder Cookieless) pro Client verwendet wird. Die AutoDetect Option führt einen Handshake mit dem Browser aus, um zu überprüfen, ob ein Cookie gespeichert werden kann, und erfordert daher eine zusätzliche Anforderung, die Bestimmung vorzunehmen. Wenn Sie cookielose Clients unterstützen müssen, sollten Sie die Verwendung UseDeviceProfile von cookielosen URLs nur für Clients verwenden, die sie erfordern.

Hinweis

Mit UP. Browser 4.1 oder UP. Browser 3.2 verhält sich immer so, als ob der Wert der Eigenschaft des HttpBrowserCapabilities Objekts lautetfalse, es sei denn, Redirect die Cookieless Eigenschaft im SessionState Abschnitt Web.config wurde explizit auf festgelegttrue.SupportsRedirectWithCookie

In ASP.NET Version 1.1 wurden true die Optionen für diese Einstellung oder false, aber mit ASP.NET 2.0 werden die Optionen erweitert und AutoDetect ist jetzt die Standardeinstellung. Wenn ihre Webanwendung die Cookieless Eigenschaft auf einen booleschen Wert festgelegt hat, sollte dies Redirect für diese Browser wie erwartet funktionieren.

Gilt für:

Weitere Informationen