fastdo  0.6.8
eienwebx::HttpRequestCtx类 参考

HTTP客户请求场景 更多...

#include <webx_HttpRequestCtx.hpp>

类 eienwebx::HttpRequestCtx 继承关系图:
eienwebx::HttpRequestCtx 的协作图:

struct  PerRequestData
 处理每次请求的一些中间变量 更多...
 

Public 类型

enum  DataRecvType { drtNone, drtRequestHeader, drtRequestBody }
 数据接收类型 更多...
 

Public 成员函数

 HttpRequestCtx (HttpApp *app, winux::uint64 clientId, winux::String const &clientEpStr, winux::SharedPointer< eiennet::ip::tcp::Socket > clientSockPtr)
 
virtual ~HttpRequestCtx ()
 
virtual bool processData (void *data) override
 处理environVars/get/post/cookies数据 更多...
 
- Public 成员函数 继承自 eiennet::ClientCtx
 ClientCtx (winux::uint64 clientId, winux::String const &clientEpStr, winux::SharedPointer< eiennet::ip::tcp::Socket > clientSockPtr)
 
virtual ~ClientCtx ()
 
winux::String getStamp () const
 客户端戳 更多...
 
- Public 成员函数 继承自 eienwebx::Request
 Request (App *app)
 
virtual ~Request ()
 
winux::String dumpEnv () const
 倾泻出全部请求环境变量 更多...
 
winux::String const & operator[] (winux::String const &name) const
 获取环境变量 更多...
 
template<typename _AppClass >
_AppClass * getApp () const
 返回指定类型的App对象指针 更多...
 
winux::String realPath (winux::String const &path)
 根据当前do文件目录路径计算绝对路径 更多...
 

Public 属性

eiennet::DataRecvSendCtx forClient
 接收数据的一些中间变量 更多...
 
http::Url url
 请求的URL 更多...
 
DataRecvType curRecvType
 当前要接收的类型 更多...
 
bool hasHeader
 标记是否读取到了请求头,这个用来避免"请求体"数据包含有“\r\n\r\n”从而导致请求头错误 更多...
 
size_t requestContentLength
 请求包含的请求体内容大小 更多...
 
- Public 属性 继承自 eiennet::ClientCtx
winux::uint64 clientId
 客户Id 更多...
 
winux::String clientEpStr
 客户终端字符串 更多...
 
winux::SharedPointer< ip::tcp::SocketclientSockPtr
 客户套接字 更多...
 
bool canRemove
 是否标记为可以移除 更多...
 
bool processingEvent
 是否事件处理中,保证同一个客户连接仅投递一个事件到线程池中 更多...
 
- Public 属性 继承自 eienwebx::Request
http::Header header
 请求头 更多...
 
winux::AnsiString body
 请求体 更多...
 
winux::StringStringMap environVars
 环境变量 更多...
 
http::Cookies cookies
 Cookie变量 read/write. 更多...
 
http::Vars get
 GET变量 readonly. 更多...
 
http::Vars post
 POST变量 readonly. 更多...
 
Appapp
 App对象指针 更多...
 
winux::String doFullPath
 当前do文件全路径 更多...
 
winux::String doDirPath
 当前do文件目录路径 更多...
 

详细描述

HTTP客户请求场景

在文件 webx_HttpRequestCtx.hpp8 行定义.

成员枚举类型说明

数据接收类型

枚举值
drtNone 
drtRequestHeader 
drtRequestBody 

在文件 webx_HttpRequestCtx.hpp16 行定义.

构造及析构函数说明

eienwebx::HttpRequestCtx::HttpRequestCtx ( HttpApp app,
winux::uint64  clientId,
winux::String const &  clientEpStr,
winux::SharedPointer< eiennet::ip::tcp::Socket clientSockPtr 
)
virtual eienwebx::HttpRequestCtx::~HttpRequestCtx ( )
virtual

成员函数说明

virtual bool eienwebx::HttpRequestCtx::processData ( void *  data)
overridevirtual

处理environVars/get/post/cookies数据

重载 eienwebx::Request .

类成员变量说明

DataRecvType eienwebx::HttpRequestCtx::curRecvType

当前要接收的类型

在文件 webx_HttpRequestCtx.hpp26 行定义.

eiennet::DataRecvSendCtx eienwebx::HttpRequestCtx::forClient

接收数据的一些中间变量

在文件 webx_HttpRequestCtx.hpp23 行定义.

bool eienwebx::HttpRequestCtx::hasHeader

标记是否读取到了请求头,这个用来避免"请求体"数据包含有“\r\n\r\n”从而导致请求头错误

在文件 webx_HttpRequestCtx.hpp27 行定义.

size_t eienwebx::HttpRequestCtx::requestContentLength

请求包含的请求体内容大小

在文件 webx_HttpRequestCtx.hpp28 行定义.

http::Url eienwebx::HttpRequestCtx::url

请求的URL

在文件 webx_HttpRequestCtx.hpp24 行定义.


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