Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

HttpRequest.Cookies Property

Gets a collection of cookies sent by the client.

[Visual Basic]
Public ReadOnly Property Cookies As HttpCookieCollection
[C#]
public HttpCookieCollection Cookies {get;}
[C++]
public: __property HttpCookieCollection* get_Cookies();
[JScript]
public function get Cookies() : HttpCookieCollection;

Property Value

An HttpCookieCollection object representing the client's cookie variables.

Remarks

ASP.NET includes two intrinsic cookie collections. The collection accessed through the Cookies collection of HttpRequest contains cookies transmitted by the client to the server in the Cookie header. The collection accessed through the Cookies collection of HttpResponse contains new cookies created on the server and transmitted to the client in the Set-Cookie header.

Example

The following example loops through all cookies sent by the client and sends the name, expiration date, security parameter, and values of each cookie to the HTTP output.

[Visual Basic] 
Dim loop1, loop2 As Integer
Dim arr1(), arr2() As String
Dim MyCookieColl As HttpCookieCollection 
Dim MyCookie As HttpCookie

MyCookieColl = Request.Cookies
' Capture all cookie names into a string array.
arr1 = MyCookieColl.AllKeys
' Grab individual cookie objects by cookie name     
for loop1 = 0 To arr1.GetUpperBound(0)
   MyCookie = MyCookieColl(arr1(loop1))
   Response.Write("Cookie: " & MyCookie.Name & "<br>")
   Response.Write("Expires: " & MyCookie.Expires & "<br>")
   Response.Write ("Secure:" & MyCookie.Secure & "<br>")

   ' Grab all values for single cookie into an object array.
   arr2 = MyCookie.Values.AllKeys
   ' Loop through cookie value collection and print all values.
   for loop2 = 0 To arr2.GetUpperBound(0)
      Response.Write("Value " & CStr(loop2) + ": " & Server.HtmlEncode(arr2(loop2)) & "<br>")
   Next loop2
Next loop1
  

[C#] 
int loop1, loop2;
HttpCookieCollection MyCookieColl;
HttpCookie MyCookie;
 
MyCookieColl = Request.Cookies;

// Capture all cookie names into a string array.
String[] arr1 = MyCookieColl.AllKeys;

// Grab individual cookie objects by cookie name.
for (loop1 = 0; loop1 < arr1.Length; loop1++) 
{
   MyCookie = MyCookieColl[arr1[loop1]];
   Response.Write("Cookie: " + MyCookie.Name + "<br>");
   Response.Write("Expires: " + MyCookie.Expires + "<br>");
   Response.Write ("Secure:" + MyCookie.Secure + "<br>");
 
   //Grab all values for single cookie into an object array.
   String[] arr2 = MyCookie.Values.AllKeys;

   //Loop through cookie Value collection and print all values.
   for (loop2 = 0; loop2 < arr2.Length; loop2++) 
   {
      Response.Write("Value" + loop2 + ": " + Server.HtmlEncode(arr2[loop2]) + "<br>");
   }
}
   

[C++] 
int loop1, loop2;
HttpCookieCollection* MyCookieColl;
HttpCookie* MyCookie;

MyCookieColl = Request->Cookies;

// Capture all cookie names into a string array.
String* arr1[] = MyCookieColl->AllKeys;

// Grab individual cookie objects by cookie name.
for (loop1 = 0; loop1 < arr1->Length; loop1++)
{
   MyCookie = MyCookieColl->Item[arr1[loop1]];
   Response->Write(String::Format(S"Cookie: {0}<br>", MyCookie->Name));
   Response->Write(String::Format(S"Expires: {0}<br>", __box(MyCookie->Expires)));
   Response->Write(String::Format(S"Secure:{0}<br>", __box(MyCookie->Secure)));

   //Grab all values for single cookie into an object array.
   String* arr2[] = MyCookie->Values->AllKeys;

   //Loop through cookie Value collection and print all values.
   for (loop2 = 0; loop2 < arr2->Length; loop2++)
   {
      Response->Write(String::Format(S"Value{0}: {1}<br>", __box(loop2), Server->HtmlEncode(arr2[loop2])));
   }
}


[JScript] 
var arr1, arr2 : String[]
var myCookieColl : HttpCookieCollection 
var myCookie : HttpCookie

myCookieColl = Request.Cookies
// Capture all cookie names into a string array.
arr1 = myCookieColl.AllKeys
// Grab individual cookie objects by cookie name     
for(var i=0; i < arr1.Length; i++){
   myCookie = myCookieColl(arr1[i])
   Response.Write("Cookie: " + myCookie.Name + "<br>")
   Response.Write("Expires: " + myCookie.Expires + "<br>")
   Response.Write ("Secure:" + myCookie.Secure + "<br>")

   // Grab all values for single cookie into an object array.
   arr2 = myCookie.Values.AllKeys
   // Loop through cookie Value collection and print all values.
   for(var j=0; j < arr2.Length; j++){
      Response.Write("Value " + j + ": " + Server.HtmlEncode(arr2[j]) + "<br>")
   }
}
  

Requirements

Platforms: Windows 2000, Windows XP Professional, Windows Server 2003 family

See Also

HttpRequest Class | HttpRequest Members | System.Web Namespace

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft