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 bezpečný způsob vytváření a manipulace 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 se soubor cookie nenajde, vytvoří se a přidá do objektu HttpResponse . Soubor cookie je nastavený 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 hlavičce Cookie
. Kolekce přístupná prostřednictvím Cookies kolekce objektu HttpResponse obsahuje nové soubory cookie vytvořené na serveru a přenášené klientovi v Set-Cookie
hlavičce odpovědi HTTP.
Konstruktory
HttpCookie(String) |
Vytvoří a pojmenuje nový soubor cookie. |
HttpCookie(String, String) |
Vytvoří, pojmenuje a přiřadí hodnotu novému souboru cookie. |
Vlastnosti
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 označující, jestli soubor cookie obsahuje podklíče. |
HttpOnly |
Získá nebo nastaví hodnotu, která určuje, zda je soubor cookie přístupný skriptem na straně klienta. |
Item[String] |
Získá zástupce vlastnosti Values . Tato vlastnost je poskytována kvůli kompatibilitě s předchozími verzemi stránek active serverových stránek (ASP). |
Name |
Získá nebo nastaví název souboru cookie. |
Path |
Získá nebo nastaví virtuální cestu pro přenos pomocí aktuálního souboru cookie. |
SameSite |
Získá nebo nastaví hodnotu pro atribut SameSite souboru cookie. |
Secure |
Získá nebo nastaví hodnotu označ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, jestli 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
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
GetType() |
Type Získá aktuální instanci. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří použádnou kopii aktuálního souboru 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 jeho HttpCookie ekvivalent a vrátí hodnotu, která označuje, zda převod proběhl úspěšně. |