Cookies

   

The QueryString and Form collections are available for each browser request, and result from parameters and/or submitted forms from the previous page. Each time the user requests any file from the server, the Request object's collections are updated with the information from the request. Occasionally you may find a need for more persistent data storage. To achieve this, the concept of cookies was introduced into the HTTP protocol specification, and quickly adopted by the browsers.

A cookie is a packet of information that is sent by the browser to the server with each request. Data items within each cookie are available in the Cookies collection, and it is accessed in a similar manner to the QueryString and Form collections. The cookie is stored as a file on the client machine, which means that it can be used to store information that is available the next time the browser starts.

When accessed through the Request object, the cookies are read-only because the information they represent is actually held on the client browser, and not the server. You can change cookie information only by using the Response object (see Chapter 4).

ASP.NET introduced two classes that help you deal with cookies. They are HttpCookieColection and HttpCookie . They are used in the next example.

To access cookies, first retrieve the cookie collection as follows :

 Dim objCookieColl As HttpCookieCollection  objCookieColl = Request.Cookies 

Then, to retrieve each individual cookie, use the following code:

 objThisCookie = objCookieColl( "CookieName" ) 

The following code enumerates all cookies that currently exist for the current session and displays them in the HTML document:

 Dim Loop1, Loop2 As Integer  Dim Array1() as String  Dim Array2 As NameValueCollection  Dim objCookieColl As HttpCookieCollection  Dim objThisCookie As HttpCookie  objCookieColl = Request.Cookies  Array1 = objCookieColl.AllKeys  for Loop1 = 0 To Array1.Length - 1    objThisCookie = objCookieColl.Item( Array1( Loop1 ) )    Response.Write( "Cookie: " & objThisCookie.Name & "<br>" )    Response.Write( "Expires: " & objThisCookie.Expires & "<br>" )    Response.Write( "Secure:" & objThisCookie.Secure & "<br>" )    Array2 = objThisCookie.Values    for Loop2 = 0 To Array2.Count - 1      Response.Write( "Value " & Convert.ToString(Loop2) + ": " & Array2.Item(Loop2) & graphics/ccc.gif "<br>" )    Next Loop2  Next Loop1 

Note

This code is part of the page that you can find at www.UsingASP.net, selecting Chapter Examples, Chapter 3, then Cookies. You can see the rendered page in Figure 3.16.

Figure 3.16. Enumerating the Cookie collection shows the current set of cookies.

graphics/03fig16.gif


   


Special Edition Using ASP. NET
Special Edition Using ASP.Net
ISBN: 0789725606
EAN: 2147483647
Year: 2002
Pages: 233

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net