Cookie Classe

Definizione

Fornisce un set di proprietà e metodi usati per gestire i cookie.Provides a set of properties and methods that are used to manage cookies. Questa classe non può essere ereditata.This class cannot be inherited.

public ref class Cookie sealed
[System.Serializable]
public sealed class Cookie
type Cookie = class
Public NotInheritable Class Cookie
Ereditarietà
Cookie
Attributi

Esempi

Nell'esempio seguente viene inviata una richiesta a un URL e vengono visualizzati i cookie restituiti nella risposta.The following example sends a request to a URL and displays the cookies returned in the response.

#using <System.dll>

using namespace System;
using namespace System::Net;

// This example is run at the command line.
// Specify one argument: the name of the host to 
// send the request to.
// If the request is sucessful, the example displays the contents of the cookies
// returned by the host.
int main()
{
   array<String^>^args = Environment::GetCommandLineArgs();
   if ( args == nullptr || args->Length != 2 )
   {
      Console::WriteLine( "Specify the URL to receive the request." );
      Environment::Exit( 1 );
   }

   
   HttpWebRequest^ request = dynamic_cast<HttpWebRequest^>(WebRequest::Create( args[ 1 ] ));
   request->CookieContainer = gcnew CookieContainer;
   HttpWebResponse^ response = dynamic_cast<HttpWebResponse^>(request->GetResponse());
   response->Cookies = request->CookieContainer->GetCookies( request->RequestUri );
   
   // Print the properties of each cookie.
   System::Collections::IEnumerator^ myEnum = response->Cookies->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Cookie^ cook = safe_cast<Cookie^>(myEnum->Current);
      Console::WriteLine( "Cookie:" );
      Console::WriteLine( "{0} = {1}", cook->Name, cook->Value );
      Console::WriteLine( "Domain: {0}", cook->Domain );
      Console::WriteLine( "Path: {0}", cook->Path );
      Console::WriteLine( "Port: {0}", cook->Port );
      Console::WriteLine( "Secure: {0}", cook->Secure );
      Console::WriteLine( "When issued: {0}", cook->TimeStamp );
      Console::WriteLine( "Expires: {0} (expired? {1})", cook->Expires, cook->Expired );
      Console::WriteLine( "Don't save: {0}", cook->Discard );
      Console::WriteLine( "Comment: {0}", cook->Comment );
      Console::WriteLine( "Uri for comments: {0}", cook->CommentUri );
      Console::WriteLine( "Version: RFC {0}", cook->Version == 1 ? (String^)"2109" : "2965" );
      
      // Show the string representation of the cookie.
      Console::WriteLine( "String: {0}", cook );
      
   }

}

// Output from this example will be vary depending on the host name specified,
// but will be similar to the following.
/*
Cookie:
CustomerID = 13xyz
Domain: .contoso.com
Path: /
Port:
Secure: False
When issued: 1/14/2003 3:20:57 PM
Expires: 1/17/2013 11:14:07 AM (expired? False)
Don't save: False
Comment: 
Uri for comments:
Version: RFC 2965
String: CustomerID = 13xyz
*/
using System.Net;
using System;
namespace Examples.System.Net.Cookies
{
    // This example is run at the command line.
    // Specify one argument: the name of the host to 
    // send the request to.
    // If the request is sucessful, the example displays the contents of the cookies
    // returned by the host.
    
    public class CookieExample
    {   
        public static void Main(string[] args)
        {   
            if (args == null || args.Length != 1)
            {
                Console.WriteLine("Specify the URL to receive the request.");
                Environment.Exit(1);
            }
            var request = (HttpWebRequest)WebRequest.Create(args[0]);
            request.CookieContainer = new CookieContainer();
        
            using (var response = (HttpWebResponse) request.GetResponse())
            {
                // Print the properties of each cookie.
                foreach (Cookie cook in response.Cookies)
                {
                    Console.WriteLine("Cookie:");
                    Console.WriteLine($"{cook.Name} = {cook.Value}");
                    Console.WriteLine($"Domain: {cook.Domain}");
                    Console.WriteLine($"Path: {cook.Path}");
                    Console.WriteLine($"Port: {cook.Port}");
                    Console.WriteLine($"Secure: {cook.Secure}");
                 
                    Console.WriteLine($"When issued: {cook.TimeStamp}");
                    Console.WriteLine($"Expires: {cook.Expires} (expired? {cook.Expired})");
                    Console.WriteLine($"Don't save: {cook.Discard}");
                    Console.WriteLine($"Comment: {cook.Comment}");
                    Console.WriteLine($"Uri for comments: {cook.CommentUri}");
                    Console.WriteLine($"Version: RFC {(cook.Version == 1 ? 2109 : 2965)}");
    
                    // Show the string representation of the cookie.
                    Console.WriteLine($"String: {cook}");
                }
            }
        }
    }
}

// Output from this example will be vary depending on the host name specified,
// but will be similar to the following.
/*
Cookie:
CustomerID = 13xyz
Domain: .contoso.com
Path: /
Port:
Secure: False
When issued: 1/14/2003 3:20:57 PM
Expires: 1/17/2013 11:14:07 AM (expired? False)
Don't save: False
Comment: 
Uri for comments:
Version: RFC 2965
String: CustomerID = 13xyz
*/

Imports System.Net

' This example is run at the command line.
' Specify one argument: the name of the host to 
' receive the request.
' If the request is sucessful, the example displays the contents of the cookies
' returned by the host.

Public Class CookieExample
    
    Public Shared Sub Main(args() As String)
        If args Is Nothing OrElse args.Length <> 1 Then
            Console.WriteLine("Specify the URL to receive the request.")
            Environment.Exit(1)
        End If
        Dim request As HttpWebRequest = WebRequest.Create(args(0))
        request.CookieContainer = New CookieContainer()
    
        Using response As HttpWebResponse = request.GetResponse()
            ' Print the properties of each cookie.
            For Each cook As Cookie In response.Cookies
                Console.WriteLine("Cookie:")
                Console.WriteLine($"{cook.Name} = {cook.Value}")
                Console.WriteLine($"Domain: {cook.Domain}")
                Console.WriteLine($"Path: {cook.Path}")
                Console.WriteLine($"Port: {cook.Port}")
                Console.WriteLine($"Secure: {cook.Secure}")
    
                Console.WriteLine($"When issued: {cook.TimeStamp}")
                Console.WriteLine($"Expires: {cook.Expires} (expired? {cook.Expired})")
                Console.WriteLine($"Don't save: {cook.Discard}")
                Console.WriteLine($"Comment: {cook.Comment}")
                Console.WriteLine($"Uri for comments: {cook.CommentUri}")
                Console.WriteLine($"Version: RFC {If(cook.Version = 1, 2109, 2965)}")
    
                ' Show the string representation of the cookie.
                Console.WriteLine($"String: {cook}")
            Next
        End Using
    End Sub
End Class



' Output from this example will be vary depending on the host name specified,
' but will be similar to the following.
'
'Cookie:
'CustomerID = 13xyz
'Domain: .contoso.com
'Path: /
'Port:
'Secure: False
'When issued: 1/14/2003 3:20:57 PM
'Expires: 1/17/2013 11:14:07 AM (expired? False)
'Don't save: False
'Comment: 
'Uri for comments:
'Version: RFC 2965
'String: CustomerID = 13xyz
'

Commenti

La Cookie classe viene utilizzata da un'applicazione client per recuperare informazioni sui cookie ricevuti con risposte http.The Cookie class is used by a client application to retrieve information about cookies that are received with HTTP responses. Durante l'analisi delle intestazioni di risposta HTTP sono supportati i formati di cookie seguenti: la specifica di Netscape originale, RFC 2109 e RFC 2965.The following cookie formats are supported during parsing of the HTTP response headers: the original Netscape specification, RFC 2109, and RFC 2965.

Per un elenco dei valori iniziali delle proprietà di un'istanza Cookiedi, vedere i Cookie diversi costruttori.For a list of initial property values for an instance of Cookie, see the various Cookie constructors.

Costruttori

Cookie()

Inizializza una nuova istanza della classe Cookie.Initializes a new instance of the Cookie class.

Cookie(String, String)

Inizializza una nuova istanza della classe Cookie con i Name e Value specificati.Initializes a new instance of the Cookie class with a specified Name and Value.

Cookie(String, String, String)

Inizializza una nuova istanza della classe Cookie con un Name, un Value e un Path specificati.Initializes a new instance of the Cookie class with a specified Name, Value, and Path.

Cookie(String, String, String, String)

Inizializza una nuova istanza della classe Cookie con un Name, un Value, un Path e un Domain specificati.Initializes a new instance of the Cookie class with a specified Name, Value, Path, and Domain.

Proprietà

Comment

Ottiene o imposta un commento che il server può aggiungere a un Cookie.Gets or sets a comment that the server can add to a Cookie.

CommentUri

Ottiene o imposta un commento URI che il server può fornire con un Cookie.Gets or sets a URI comment that the server can provide with a Cookie.

Discard

Ottiene o imposta il flag di eliminazione impostato dal server.Gets or sets the discard flag set by the server.

Domain

Ottiene o imposta l'URI per il quale è valido il Cookie.Gets or sets the URI for which the Cookie is valid.

Expired

Ottiene o imposta lo stato corrente del Cookie.Gets or sets the current state of the Cookie.

Expires

Ottiene o imposta la data e l'ora di scadenza del Cookie come DateTime.Gets or sets the expiration date and time for the Cookie as a DateTime.

HttpOnly

Determina se per uno script di pagina o un altro contenuto attivo è possibile accedere a questo cookie.Determines whether a page script or other active content can access this cookie.

Name

Ottiene o imposta il nome per il Cookie.Gets or sets the name for the Cookie.

Path

Ottiene o imposta gli URI ai quali si applica il Cookie.Gets or sets the URIs to which the Cookie applies.

Port

Ottiene o imposta un elenco di porte TCP alle quali si applica il Cookie.Gets or sets a list of TCP ports that the Cookie applies to.

Secure

Ottiene o imposta il livello di sicurezza di un Cookie.Gets or sets the security level of a Cookie.

TimeStamp

Ottiene l'ora di emissione del cookie come DateTime.Gets the time when the cookie was issued as a DateTime.

Value

Ottiene o imposta l'oggetto Value per Cookie.Gets or sets the Value for the Cookie.

Version

Ottiene o imposta la versione della manutenzione dello stato HTTP a cui è conforme il cookie.Gets or sets the version of HTTP state maintenance to which the cookie conforms.

Metodi

Equals(Object)

Esegue l'override del metodo Equals(Object).Overrides the Equals(Object) method.

GetHashCode()

Esegue l'override del metodo GetHashCode().Overrides the GetHashCode() method.

GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
ToString()

Esegue l'override del metodo ToString().Overrides the ToString() method.

Si applica a

Vedi anche