Udostępnij za pośrednictwem


Cookie.Version Właściwość

Definicja

Pobiera lub ustawia wersję konserwacji stanu HTTP, do której plik cookie jest zgodny.

public:
 property int Version { int get(); void set(int value); };
public int Version { get; set; }
member this.Version : int with get, set
Public Property Version As Integer

Wartość właściwości

Wersja konserwacji stanu HTTP, do której jest zgodny plik cookie.

Wyjątki

Wartość określona dla wersji jest niedozwolona.

Przykłady

Poniższy przykład przedstawia właściwości plików cookie zwróconych w odpowiedzi. Aby zapoznać się z kompletnym przykładem, zobacz Cookie temat klasy.

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 );
   
}
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}");
    }
}
    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

Uwagi

Wartość domyślna właściwości Version to 0, zgodna z oryginalną specyfikacją netscape. Jeśli wartość jest jawnie ustawiona na 1, musi być Cookie zgodna z specyfikacją RFC 2109. Należy pamiętać, że jeśli Cookie obiekt został utworzony automatycznie, odbierając nagłówek odpowiedzi HTTP Set-Cookie2, zgodność jest ustawiona na RFC 2965.

Próba ustawienia Version właściwości na wartość mniejszą niż zero spowoduje zgłoszenie wyjątku.

Dotyczy

Zobacz też