Cookie Cookie Cookie Cookie Class

定義

クッキーを管理するために使用するプロパティとメソッドのセットを提供します。Provides a set of properties and methods that are used to manage cookies. このクラスは継承できません。This class cannot be inherited.

public ref class Cookie sealed
[System.Serializable]
public sealed class Cookie
type Cookie = class
Public NotInheritable Class Cookie
継承
CookieCookieCookieCookie
属性

次の例では、URL に要求を送信し、応答で返されたクッキーを表示します。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
'

注釈

クラスCookieは、HTTP 応答で受信された cookie に関する情報を取得するために、クライアントアプリケーションによって使用されます。The Cookie class is used by a client application to retrieve information about cookies that are received with HTTP responses. HTTP 応答ヘッダーの解析中に、元の Netscape 仕様、RFC 2109、RFC 2965 の各 cookie 形式がサポートされます。The following cookie formats are supported during parsing of the HTTP response headers: the original Netscape specification, RFC 2109, and RFC 2965.

Cookieインスタンスの初期プロパティ値の一覧については、さまざまなCookieコンストラクターを参照してください。For a list of initial property values for an instance of Cookie, see the various Cookie constructors.

コンストラクター

Cookie() Cookie() Cookie() Cookie()

Cookie クラスの新しいインスタンスを初期化します。Initializes a new instance of the Cookie class.

Cookie(String, String) Cookie(String, String) Cookie(String, String) Cookie(String, String)

指定した CookieName を使用して、Value クラスの新しいインスタンスを初期化します。Initializes a new instance of the Cookie class with a specified Name and Value.

Cookie(String, String, String) Cookie(String, String, String) Cookie(String, String, String) Cookie(String, String, String)

指定した CookieName、および Value を使用して、Path クラスの新しいインスタンスを初期化します。Initializes a new instance of the Cookie class with a specified Name, Value, and Path.

Cookie(String, String, String, String) Cookie(String, String, String, String) Cookie(String, String, String, String) Cookie(String, String, String, String)

指定した CookieNameValue、および Path を使用して、Domain クラスの新しいインスタンスを初期化します。Initializes a new instance of the Cookie class with a specified Name, Value, Path, and Domain.

プロパティ

Comment Comment Comment Comment

サーバーが Cookie に追加できるコメントを取得または設定します。Gets or sets a comment that the server can add to a Cookie.

CommentUri CommentUri CommentUri CommentUri

サーバーが Cookie で提供できる URI コメントを取得または設定します。Gets or sets a URI comment that the server can provide with a Cookie.

Discard Discard Discard Discard

サーバーが設定した破棄フラグを取得または設定します。Gets or sets the discard flag set by the server.

Domain Domain Domain Domain

Cookie が有効な URI を取得または設定します。Gets or sets the URI for which the Cookie is valid.

Expired Expired Expired Expired

Cookie の現在の状態を取得または設定します。Gets or sets the current state of the Cookie.

Expires Expires Expires Expires

Cookie の有効期限の日時を DateTime として取得または設定します。Gets or sets the expiration date and time for the Cookie as a DateTime.

HttpOnly HttpOnly HttpOnly HttpOnly

ページ スクリプトまたは他のアクティブ コンテンツがこのクッキーにアクセスできるかどうかを決定します。Determines whether a page script or other active content can access this cookie.

Name Name Name Name

Cookie の名前を取得または設定します。Gets or sets the name for the Cookie.

Path Path Path Path

Cookie が適用される URI を取得または設定します。Gets or sets the URIs to which the Cookie applies.

Port Port Port Port

Cookie が適用される TCP ポートのリストを取得または設定します。Gets or sets a list of TCP ports that the Cookie applies to.

Secure Secure Secure Secure

Cookie のセキュリティ レベルを取得または設定します。Gets or sets the security level of a Cookie.

TimeStamp TimeStamp TimeStamp TimeStamp

クッキーが DateTime として発行された時刻を取得します。Gets the time when the cookie was issued as a DateTime.

Value Value Value Value

ValueCookie を取得または設定します。Gets or sets the Value for the Cookie.

Version Version Version Version

クッキーが準拠する HTTP 状態保守のバージョンを取得または設定します。Gets or sets the version of HTTP state maintenance to which the cookie conforms.

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Equals(Object) メソッドをオーバーライドします。Overrides the Equals(Object) method.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

GetHashCode() メソッドをオーバーライドします。Overrides the GetHashCode() method.

GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

ToString() メソッドをオーバーライドします。Overrides the ToString() method.

適用対象

こちらもご覧ください