acl  3.5.3.0
acl::HttpCookie类 参考

#include <HttpCookie.hpp>

+ 类 acl::HttpCookie 继承关系图:
+ acl::HttpCookie 的协作图:

Public 成员函数

 HttpCookie (const char *name, const char *value, dbuf_guard *dbuf=NULL)
 
 HttpCookie (dbuf_guard *dbuf=NULL)
 
 HttpCookie (const HttpCookie *cookie, dbuf_guard *dbuf=NULL)
 
 ~HttpCookie (void)
 
bool setCookie (const char *value)
 
void destroy ()
 
HttpCookiesetDomain (const char *domain)
 
HttpCookiesetPath (const char *path)
 
HttpCookiesetExpires (time_t timeout)
 
HttpCookiesetExpires (const char *expires)
 
HttpCookiesetMaxAge (int max_age)
 
HttpCookieadd (const char *name, const char *value)
 
const char * getName (void) const
 
const char * getValue (void) const
 
const char * getExpires (void) const
 
const char * getDomain (void) const
 
const char * getPath (void) const
 
int getMaxAge (void) const
 
const char * getParam (const char *name, bool case_insensitive=true) const
 
const std::list< HTTP_PARAM * > & getParams (void) const
 
- Public 成员函数 继承自 acl::dbuf_obj
 dbuf_obj (dbuf_guard *guard=NULL)
 
virtual ~dbuf_obj ()
 
int pos () const
 
dbuf_guardget_guard () const
 

详细描述

http 协议头中 cookie 对象类

在文件 HttpCookie.hpp12 行定义.

构造及析构函数说明

◆ HttpCookie() [1/3]

acl::HttpCookie::HttpCookie ( const char *  name,
const char *  value,
dbuf_guard dbuf = NULL 
)

构造函数

参数
name{const char*} cookie 名,为非空字符串且字符串长度 > 0
value{const char*} cookie 值,指针非空,字符串长度可以为 0 注:如果输入的两个参数不符合条件,内部将会产生断言
dbuf{dbuf_guard*} 非空时将做为内存分配池

◆ HttpCookie() [2/3]

acl::HttpCookie::HttpCookie ( dbuf_guard dbuf = NULL)

当使用该构造函数时,可以使用 setCookie 来添加 cookie 项

参数
dbuf{dbuf_guard*} 非空时将做为内存分配池

◆ HttpCookie() [3/3]

acl::HttpCookie::HttpCookie ( const HttpCookie cookie,
dbuf_guard dbuf = NULL 
)

拷贝构造函数

参数
cookie{const HttpCookie*} 非 NULL, 内部将复制拷贝其成员变量
dbuf{dbuf_guard*} 非空时将做为内存分配池

◆ ~HttpCookie()

acl::HttpCookie::~HttpCookie ( void  )

析构函数

成员函数说明

◆ add()

HttpCookie& acl::HttpCookie::add ( const char *  name,
const char *  value 
)

添加与该 cookie 对象其它属性值

参数
name{const char*} 属性名
value{const char*} 属性值
返回
{HttpCookie&} 返回本对象的引用,便于用户连续操作

◆ destroy()

void acl::HttpCookie::destroy ( )

动态创建的类对象通过此函数释放

◆ getDomain()

const char* acl::HttpCookie::getDomain ( void  ) const

获得 cookie 作用域

返回
{const char*} 非空指针,返回值为 "\0" 表示不存在

◆ getExpires()

const char* acl::HttpCookie::getExpires ( void  ) const

获得字符串格式的过期时间

返回
{const char*} 非空指针,返回值为 "\0" 表示不存在

◆ getMaxAge()

int acl::HttpCookie::getMaxAge ( void  ) const

获得 cookie 的生存周期

返回
{int} 返回 -1 时表示没有该 Max-Age 字段

◆ getName()

const char* acl::HttpCookie::getName ( void  ) const

获得 cookie 名称,取决于构建函数输入值

返回
{const char*} 为长度大于 0 的字符串,永远非空指针 注:用户必须在调用 HttpCookie(const char*, const char*) 构造 或调用 setCookie(const char*) 成功后才可以调用该函数, 否则返回的数据是 "\0"

◆ getParam()

const char* acl::HttpCookie::getParam ( const char *  name,
bool  case_insensitive = true 
) const

获得对应参数名的参数值

参数
name{const char*} 参数名
case_insensitive{bool} 是否区分大小写,true 表示 不区分大小写
返回
{const char*} 非空指针,返回值为 "\0" 表示不存在

◆ getParams()

const std::list<HTTP_PARAM*>& acl::HttpCookie::getParams ( void  ) const

获得该 cookie 对象的除 cookie 名及 cookie 值之外的 所有属性及属性值

返回
{const std::list<HTTP_PARAM*>&}

◆ getPath()

const char* acl::HttpCookie::getPath ( void  ) const

获得 cookie 的存储路径

返回
{const char*} 非空指针,返回值为 "\0" 表示不存在

◆ getValue()

const char* acl::HttpCookie::getValue ( void  ) const

获得 cookie 值,取决于构造函数输入值

返回
{const char*} 非空指针,有可能是空字符串("\0")

◆ setCookie()

bool acl::HttpCookie::setCookie ( const char *  value)

对于 Set-Cookie: xxx=xxx; domain=xxx; expires=xxx; path=xxx; max-age=xxx; ... 类的数据进行分析

参数
value{const char*} 类似于 xxx=xxx; domain=xxx; ... 内容
返回
{bool} 传入的数据是否合法

◆ setDomain()

HttpCookie& acl::HttpCookie::setDomain ( const char *  domain)

设置 cookie 的作用域

参数
domain{const char*} cookie 作用域
返回
{HttpCookie&} 返回本对象的引用,便于用户连续操作

◆ setExpires() [1/2]

HttpCookie& acl::HttpCookie::setExpires ( time_t  timeout)

设置 cookie 的过期时间段,即用当前时间加输入的时间即为 cookie 的过期时间

参数
timeout{time_t} 过期时间值(单位为秒),当前时间加该时间 即 cookie 的过期时间
返回
{HttpCookie&} 返回本对象的引用,便于用户连续操作

◆ setExpires() [2/2]

HttpCookie& acl::HttpCookie::setExpires ( const char *  expires)

设置 cookie 的过期时间截字符串

参数
expires{const char*} 过期时间截
返回
{HttpCookie&} 返回本对象的引用,便于用户连续操作

◆ setMaxAge()

HttpCookie& acl::HttpCookie::setMaxAge ( int  max_age)

设置 cookie 的生存周期

参数
max_age{int} 生存秒数
返回
{HttpCookie&} 返回本对象的引用,便于用户连续操作

◆ setPath()

HttpCookie& acl::HttpCookie::setPath ( const char *  path)

设置 cookie 的 path 字段

参数
path{const char*} path 字段值
返回
{HttpCookie&} 返回本对象的引用,便于用户连续操作

该类的文档由以下文件生成: