#include <HttpSession.hpp>
服务端 HttpSession 类,目前该类的数据存储只能支持存在 memcached 上
在文件 HttpSession.hpp 第 16 行定义.
◆ HttpSession()
acl::HttpSession::HttpSession |
( |
session & |
session | ) |
|
◆ ~HttpSession()
virtual acl::HttpSession::~HttpSession |
( |
void |
| ) |
|
|
virtual |
◆ getAttribute() [1/2]
virtual const char* acl::HttpSession::getAttribute |
( |
const char * |
name | ) |
const |
|
virtual |
获得客户端在服务端存储的 session 的字符串属性值
- 参数
-
name | {const char*} session 属性名,非空 |
- 返回
- {const char*} session 属性值,返回地址永远非空指针,用户 可以通过判断返回地址是否为空串("\0")来判断是否存在或出错 注:该函数返回非空数据后,用户应该立刻保留此返回值,因为下次 的其它函数调用可能会清除该临时返回数据
◆ getAttribute() [2/2]
virtual const void* acl::HttpSession::getAttribute |
( |
const char * |
name, |
|
|
size_t * |
size |
|
) |
| const |
|
virtual |
获得客户端在服务端存储的 session 的二进制属性值
- 参数
-
name | {const char*} session 属性名,非空 |
size | {size_t*} 该参数非空且属性值非空时,该指针地址 存储返回属性值的大小 |
- 返回
- {const void*} session 属性值,为空指针时说明不存在 或内部查询失败 注:该函数返回非空数据后,用户应该立刻保留此返回值,因为下次 的其它函数调用可能会清除该临时返回数据
◆ getAttributes() [1/2]
从服务端获得对应客户端的所有会话属性对象,这样可以减少与服务端的交互次数
- 参数
-
attrs | {std::map<string, session_string>&} |
- 返回
- {bool} 是否成功
◆ getAttributes() [2/2]
virtual bool acl::HttpSession::getAttributes |
( |
const std::vector< string > & |
names, |
|
|
std::vector< session_string > & |
values |
|
) |
| const |
|
virtual |
从服务端获得对应客户端的相应属性集合
- 参数
-
names | {const std::vector<string>&} 属性名集合 |
values | {std::vector<session_string>&} 存储对应的属性值结果集 |
- 返回
- {bool} 是否成功
◆ getSid()
const char* acl::HttpSession::getSid |
( |
void |
| ) |
const |
获得所产生的 session ID 标识
- 返回
- {const char*} 永远返回以 '\0' 结尾的非空指针,可根据返回 值是否为空串("\0")来判断 sid 是否存在
◆ invalidate()
virtual bool acl::HttpSession::invalidate |
( |
void |
| ) |
|
|
virtual |
使 session 从服务端的缓存中删除即使 session 失效
- 返回
- {bool} 是否使 session 失效
◆ removeAttribute()
virtual bool acl::HttpSession::removeAttribute |
( |
const char * |
name | ) |
|
|
virtual |
删除客户端 session 中的某个属性值
- 参数
-
name | {const char*} session 属性名,非空 |
- 返回
- {bool} 删除是否成功
◆ setAttribute() [1/2]
virtual bool acl::HttpSession::setAttribute |
( |
const char * |
name, |
|
|
const char * |
value |
|
) |
| |
|
virtual |
在设置服务端设置 session 的字符串属性值
- 参数
-
name | {const char*} session 属性名,非空 |
value | {const char*} session 属性值,非空 |
- 返回
- {bool} 返回 false 说明设置失败
◆ setAttribute() [2/2]
virtual bool acl::HttpSession::setAttribute |
( |
const char * |
name, |
|
|
const void * |
value, |
|
|
size_t |
len |
|
) |
| |
|
virtual |
在设置服务端设置 session 的二进制属性值
- 参数
-
name | {const char*} session 属性名,非空 |
value | {const void*} session 属性值,非空 |
len | {size_t} value 数据长度 |
- 返回
- {bool} 返回 false 说明设置失败
◆ setAttributes()
在服务端设置 session 属性集合,这样可以减少与后端的交互次数
- 参数
-
attrs | {const std::map<string, session_string>&} 属性集合对象 |
- 返回
- {bool} 设置是否成功
◆ setMaxAge()
virtual bool acl::HttpSession::setMaxAge |
( |
time_t |
ttl | ) |
|
|
virtual |
设置 session 在缓存服务器上的生存周期
- 参数
-
- 返回
- {bool} 是否成功
◆ session_
session& acl::HttpSession::session_ |
|
protected |
该类的文档由以下文件生成: