HttpCookie-Klasse
Aktualisiert: November 2007
Stellt ein typsicheres Verfahren zum Erstellen und Bearbeiten einzelner HTTP-Cookies bereit.
Assembly: System.Web (in System.Web.dll)
[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)] public sealed class HttpCookie
/** @attribute AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal) */ public final class HttpCookie
public final class HttpCookie
Die HttpCookie-Klasse ruft Eigenschaften einzelner Cookies ab und legt diese fest. Die HttpCookieCollection-Klasse stellt Methoden zum Speichern, Abrufen und Verwalten mehrerer Cookies bereit.
ASP.NET enthält zwei systeminterne Cookieauflistungen. Die Auflistung, auf die über die Cookies-Auflistung des HttpRequest-Objekts zugegriffen werden kann, enthält Cookies, die vom Client im Cookie-Header an den Server übertragen werden. Die Auflistung, auf die über die Cookies-Auflistung des HttpResponse-Objekts zugegriffen werden kann, enthält neue Cookies, die auf dem Server erstellt und im Set-Cookie-HTTP-Antwortheader an den Client übertragen werden.
| Topic | Location |
|---|---|
| Gewusst wie: Schreiben eines Cookies | Erstellen von ASP.NET-Webanwendungen |
| Gewusst wie: Schreiben eines Cookies | Erstellen von ASP.NET-Webanwendungen in Visual Studio |
Im folgenden Codebeispiel wird veranschaulicht, wie ein Cookie mit dem Namen DateCookieExample im HttpRequest-Objekt überprüft wird. Wenn das Cookie nicht gefunden wird, wird es erstellt und dem HttpResponse-Objekt hinzugefügt. Für das Cookie wird eine Gültigkeitsdauer von zehn Minuten festgelegt.
<%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { StringBuilder sb = new StringBuilder(); // Get cookie from the current request. HttpCookie cookie = Request.Cookies.Get("DateCookieExample"); // Check if cookie exists in the current request. if (cookie == null) { sb.Append("Cookie was not received from the client. "); sb.Append("Creating cookie to add to the response. <br/>"); // Create cookie. cookie = new HttpCookie("DateCookieExample"); // Set value of cookie to current date time. cookie.Value = DateTime.Now.ToString(); // Set cookie to expire in 10 minutes. cookie.Expires = DateTime.Now.AddMinutes(10d); // Insert the cookie in the current HttpResponse. Response.Cookies.Add(cookie); } else { sb.Append("Cookie retrieved from client. <br/>"); sb.Append("Cookie Name: " + cookie.Name + "<br/>"); sb.Append("Cookie Value: " + cookie.Value + "<br/>"); sb.Append("Cookie Expiration Date: " + cookie.Expires.ToString() + "<br/>"); } Label1.Text = sb.ToString(); } </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>HttpCookie Example</title> </head> <body> <form id="form1" runat="server"> <div> <asp:Label id="Label1" runat="server"></asp:Label> </div> </form> </body> </html>
- AspNetHostingPermission
für den Betrieb in einer Hostumgebung. Anforderungswert: LinkDemand, Berechtigungswert: Minimal
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.