다음을 통해 공유


Cookie.Version 속성

정의

쿠키가 준수하는 HTTP 상태 유지 관리 버전을 가져오거나 설정합니다.

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

속성 값

쿠키가 준수하는 HTTP 상태 유지 관리 버전입니다.

예외

버전에 지정된 값이 허용되지 않는 경우

예제

다음 예제에서는 응답에 반환된 쿠키의 속성을 표시합니다. 전체 예제는 클래스 항목을 참조 Cookie 하세요.

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

설명

속성의 Version 기본값은 원래 Netscape 사양을 준수하는 0입니다. 값이 명시적으로 1 Cookie 로 설정된 경우 RFC 2109를 준수해야 합니다. Set-Cookie2 HTTP 응답 헤더를 수신하여 가 자동으로 만들어진 경우 Cookie 준수는 RFC 2965로 설정됩니다.

속성을 0보다 작은 값으로 설정 Version 하면 예외가 throw됩니다.

적용 대상

추가 정보