Crow:路由局部插件2 调用before_handle

Crow:http请求到Rule绑定的handler_的调用链-CSDN博客

中介绍了当找到对应的路由后Router::handle

template<typename App>
typename std::enable_if<std::tuple_size<typename App::mw_container_t>::value != 0, void>::type
  handle_rule(BaseRule* rule, crow::request& req, crow::response& res, const crow::routing_params& rp)
{
    if (!rule->mw_indices_.empty())
    {
        ...
    }
}

template<typename... Middlewares>
class Crow
{
    using mw_container_t = std::tuple<Middlewares...>;
};

struct middleware_indices
{
    bool empty() const
    {
        return indices_.empty();
    }
private:
    std::vector<int> indices_;
}

当Crow类中有插件时,会调用这个版本的handle_rule

而改handle_rule会先判断mw_indices_是否为空

也就是

相关推荐

  1. Crow局部2 调用before_handle

    2024-01-11 12:44:01       61 阅读
  2. Crow:蓝图1 CROW_BP_ROUTE

    2024-01-11 12:44:01       51 阅读
  3. Crow:黑魔法 添加3 绑定lambda

    2024-01-11 12:44:01       62 阅读
  4. Crow:基于req.rul查找Rule对象及匹配参数

    2024-01-11 12:44:01       61 阅读
  5. ros2--

    2024-01-11 12:44:01       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-11 12:44:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-11 12:44:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-11 12:44:01       82 阅读
  4. Python语言-面向对象

    2024-01-11 12:44:01       91 阅读

热门阅读

  1. C++入门级程序day1

    2024-01-11 12:44:01       57 阅读
  2. Python Selenium常见的报错以及措施

    2024-01-11 12:44:01       55 阅读
  3. Halcon 3D相关算子(二)

    2024-01-11 12:44:01       52 阅读
  4. c++字符串类的封装带引用计数

    2024-01-11 12:44:01       46 阅读