C/C++ Reference
HttpCookie Struct Reference

A cookie is used for exchanging a small amount of information between a HttpPage and a web browser. More...

#include <HttpServer.h>

List of all members.

Public Member Functions

const char * getComment () const
 Returns the comment set for this cookie or null if the cookie comment is not set.
const char * getDomain () const
 Returns the domain name set for this cookie.
BaTime getMaxAge () const
 Returns the maximum age of the cookie, specified in seconds; by default, 0 indicating the cookie will persist until browser shutdown.
const char * getName () const
 Returns the name of the cookie.
const char * getPath () const
 Returns the path on the server to which the browser returns this cookie.
bool getSecure () const
 Returns true if the browser is sending cookies only over a secure protocol, or false if the browser can send cookies using any protocol.
const char * getValue () const
 Returns the value of the cookie.
void setComment (const char *purpose)
 Specifies a comment that describes a cookie's purpose.
void setDomain (const char *pattern)
 Specifies the domain within which this cookie should be presented.
void setMaxAge (BaTime expiry)
 Sets the maximum age of the cookie in seconds.
void deleteCookie ()
 Specifies a path for the cookie to which the client should return the cookie.
void setPath (const char *uri)
 Set the cookie path.
void setSecure (bool flag)
 Inform the browser whether the cookie should be sent only using a secure protocol such as HTTPS -- i.e.
void setValue (const char *newValue)
 Assigns a new value to a cookie after the cookie is created.
void activate ()
 Activates the cookie.

Detailed Description

A cookie is used for exchanging a small amount of information between a HttpPage and a web browser.

A cookie's value can uniquely identify a client, so cookies are commonly used for session management.

A cookie has a name, a single value, and optional attributes such as: a comment, path and domain qualifiers, a maximum age, and a version number.

The cookie implementation is almost identical to the cookie implementation in the JavaTM Enterprise Edition

Typical usage:

 HttpCookie* cookie = request->getCookie("myCookie");
 if( ! cookie ) //If no cookie set for this page
 {  //Create a session cookie
    cookie = reply->createCookie("myCookie");
    //Active cookie i.e. send cookie to client
    cookie->activate();
 }
 //This will never fail
 baAssert(cookie == request->getCookie("myCookie"));

Member Function Documentation

const char* HttpCookie::getComment ( ) const

Returns the comment set for this cookie or null if the cookie comment is not set.

const char* HttpCookie::getDomain ( ) const

Returns the domain name set for this cookie.

BaTime HttpCookie::getMaxAge ( ) const

Returns the maximum age of the cookie, specified in seconds; by default, 0 indicating the cookie will persist until browser shutdown.

const char* HttpCookie::getName ( ) const

Returns the name of the cookie.

const char* HttpCookie::getPath ( ) const

Returns the path on the server to which the browser returns this cookie.

bool HttpCookie::getSecure ( ) const

Returns true if the browser is sending cookies only over a secure protocol, or false if the browser can send cookies using any protocol.

const char* HttpCookie::getValue ( ) const

Returns the value of the cookie.