HttpCookie Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje typově bezpečný způsob, jak vytvářet a manipulovat s jednotlivými soubory cookie HTTP.
public ref class HttpCookie sealed
public sealed class HttpCookie
type HttpCookie = class
Public NotInheritable Class HttpCookie
- Dědičnost
-
HttpCookie
Příklady
Následující příklad kódu ukazuje, jak zkontrolovat soubor cookie pojmenovaný DateCookieExample v objektu HttpRequest . Pokud soubor cookie nebyl nalezen, vytvoří se a přidá do objektu HttpResponse . Soubor cookie se nastaví na vypršení platnosti za 10 minut.
<%@ 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>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Dim sb As New StringBuilder()
' Get cookie from current request.
Dim cookie As HttpCookie
cookie = Request.Cookies.Get("DateCookieExample")
' Check if cookie exists in the current request
If (cookie Is Nothing) Then
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/>")
End If
Label1.Text = sb.ToString()
End Sub
</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>
Poznámky
Třída HttpCookie získá a nastaví vlastnosti jednotlivých souborů cookie. Třída HttpCookieCollection poskytuje metody pro ukládání, načítání a správu více souborů cookie.
ASP.NET obsahuje dvě vnitřní kolekce souborů cookie. Kolekce přístupná prostřednictvím Cookies kolekce objektu HttpRequest obsahuje soubory cookie přenášené klientem na server v Cookie hlavičce. Kolekce přístupná prostřednictvím Cookies kolekce objektu HttpResponse obsahuje nové soubory cookie vytvořené na serveru a přenášené do klienta v Set-Cookie hlavičce odpovědi HTTP.
Konstruktory
| Name | Description |
|---|---|
| HttpCookie(String, String) |
Vytvoří, pojmenuje a přiřadí hodnotu novému souboru cookie. |
| HttpCookie(String) |
Vytvoří a pojmenuje nový soubor cookie. |
Vlastnosti
| Name | Description |
|---|---|
| Domain |
Získá nebo nastaví doménu pro přidružení souboru cookie. |
| Expires |
Získá nebo nastaví datum a čas vypršení platnosti souboru cookie. |
| HasKeys |
Získá hodnotu určující, zda soubor cookie obsahuje podklíče. |
| HttpOnly |
Získá nebo nastaví hodnotu, která určuje, zda je soubor cookie přístupný pomocí skriptu na straně klienta. |
| Item[String] |
Získá zástupce vlastnosti Values . Tato vlastnost je poskytována z důvodu kompatibility s předchozími verzemi služby Active Server Pages (ASP). |
| Name |
Získá nebo nastaví název souboru cookie. |
| Path |
Získá nebo nastaví virtuální cestu k přenosu s aktuálním souborem cookie. |
| SameSite |
Získá nebo nastaví hodnotu pro SameSite atribut cookie. |
| Secure |
Získá nebo nastaví hodnotu určující, zda se má soubor cookie přenášet pomocí protokolu SSL (Secure Sockets Layer) - to znamená pouze přes HTTPS. |
| Shareable |
Určuje, zda se soubor cookie může účastnit ukládání výstupu do mezipaměti. |
| Value |
Získá nebo nastaví individuální hodnotu souboru cookie. |
| Values |
Získá kolekci párů klíč/hodnota, které jsou obsaženy v jednom objektu cookie. |
Metody
| Name | Description |
|---|---|
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
| TryParse(String, HttpCookie) |
Převede zadanou řetězcovou reprezentaci souboru cookie na její HttpCookie ekvivalent a vrátí hodnotu, která označuje, zda převod proběhl úspěšně. |