fastdo
0.6.16
|
URL路由器 更多...
#include <http_UrlRouter.hpp>
Public 类型 | |
using | CrossRouteHandlerFunction = CrossRouteHandlerFunctionT< http::Request, http::Response > |
using | RouteHandlerFunction = RouteHandlerFunctionT< http::Request, http::Response > |
using | WebMainHandlerFunction = std::function< void(winux::SharedPointer< http::Request > requestPtr, http::Response &rsp) > |
WebMain逻辑处理函数类型 更多... | |
using | ExtensionHandlingHandlerFunction = std::function< bool(winux::String const &extName, winux::String const &fullPath, winux::SharedPointer< http::Request > requestPtr, http::Response &rsp) > |
特别扩展名处理函数类型 更多... | |
Public 成员函数 | |
UrlRouter (http::HttpServerConfig *httpConfig=nullptr) | |
构造函数 更多... | |
virtual | ~UrlRouter () |
析构函数 更多... | |
bool | init (http::HttpServerConfig *httpConfig) |
初始化 更多... | |
void | crossRoute (winux::String const &method, winux::String const &path, CrossRouteHandlerFunction handler) |
注册过径路由处理器 更多... | |
void | route (winux::String const &method, winux::String const &path, RouteHandlerFunction handler) |
注册普通路由处理器 更多... | |
void | onWebMainHandler (WebMainHandlerFunction handler) |
void | onExtensionHandlingHandler (ExtensionHandlingHandlerFunction handler) |
Protected 成员函数 | |
virtual void | routing (winux::SharedPointer< http::Request > requestPtr, http::UrlPathPartData const &urlData, http::Response &rsp) |
路由处理 更多... | |
virtual void | onWebMain (winux::SharedPointer< http::Request > requestPtr, http::Response &rsp) |
virtual bool | onExtensionHandling (winux::String const &extName, winux::String const &fullPath, winux::SharedPointer< http::Request > requestPtr, http::Response &rsp) |
Protected 属性 | |
http::StaticFileMemoryCache | _staticFileCache |
静态文件缓存 更多... | |
std::vector< std::unordered_map< winux::String, std::unordered_map< winux::String, CrossRouteHandlerFunction > > > | _crossRouter |
过径路由器 更多... | |
std::unordered_map< winux::String, std::unordered_map< winux::String, RouteHandlerFunction > > | _router |
普通路由器 更多... | |
WebMainHandlerFunction | _WebMainHandler |
ExtensionHandlingHandlerFunction | _ExtensionHandlingHandler |
URL路由器
在文件 http_UrlRouter.hpp 第 25 行定义.
using http::UrlRouter::CrossRouteHandlerFunction = CrossRouteHandlerFunctionT<http::Request, http::Response> |
在文件 http_UrlRouter.hpp 第 28 行定义.
在文件 http_UrlRouter.hpp 第 29 行定义.
using http::UrlRouter::WebMainHandlerFunction = std::function< void ( winux::SharedPointer<http::Request> requestPtr, http::Response & rsp ) > |
using http::UrlRouter::ExtensionHandlingHandlerFunction = std::function< bool ( winux::String const & extName, winux::String const & fullPath, winux::SharedPointer<http::Request> requestPtr, http::Response & rsp ) > |
特别扩展名处理函数类型
extName | 文件扩展名 |
fullPath | 文件全路径 |
requestPtr | 请求场景对象 |
rsp | 响应对象 |
true | 成功处理 |
false | 没有处理 |
在文件 http_UrlRouter.hpp 第 99 行定义.
http::UrlRouter::UrlRouter | ( | http::HttpServerConfig * | httpConfig = nullptr | ) |
构造函数
|
virtual |
析构函数
bool http::UrlRouter::init | ( | http::HttpServerConfig * | httpConfig | ) |
初始化
void http::UrlRouter::crossRoute | ( | winux::String const & | method, |
winux::String const & | path, | ||
CrossRouteHandlerFunction | handler | ||
) |
注册过径路由处理器
method | method为半角逗号','分隔的HTTP方法名字符串,可以是"*"表示通配所有HTTP方法 |
path | path需以'/'开头 |
handler | 处理器函数 |
void http::UrlRouter::route | ( | winux::String const & | method, |
winux::String const & | path, | ||
RouteHandlerFunction | handler | ||
) |
注册普通路由处理器
method | method为半角逗号','分隔的HTTP方法名字符串,可以是"*"表示通配所有HTTP方法 |
path | path需以'/'开头 |
handler | 处理器函数 |
|
protectedvirtual |
路由处理
|
inline |
在文件 http_UrlRouter.hpp 第 83 行定义.
|
protectedvirtual |
|
inline |
在文件 http_UrlRouter.hpp 第 99 行定义.
|
protectedvirtual |
被 eienwebx::HttpApp 重载.
|
protected |
静态文件缓存
在文件 http_UrlRouter.hpp 第 59 行定义.
|
protected |
过径路由器
在文件 http_UrlRouter.hpp 第 66 行定义.
|
protected |
|
protected |
在文件 http_UrlRouter.hpp 第 83 行定义.
|
protected |
在文件 http_UrlRouter.hpp 第 99 行定义.