diff options
author | Antony Woods <acron1@gmail.com> | 2014-10-23 18:33:03 +0100 |
---|---|---|
committer | Antony Woods <acron1@gmail.com> | 2014-10-23 18:33:03 +0100 |
commit | 27bf11d35c8ce44fd9fef656e2975712846b9bb2 (patch) | |
tree | 7005bb1a5227983464e9a89fb7a381000ce7bb74 /examples/example.cpp | |
parent | a5fab23f70e6e33c633ba4b646a41d0851169ad1 (diff) | |
download | crow-27bf11d35c8ce44fd9fef656e2975712846b9bb2.tar.gz crow-27bf11d35c8ce44fd9fef656e2975712846b9bb2.zip |
Re-implemented 'get_middleware()' as suggested, without changing the Server constructor and now no longer encountering hangs
Diffstat (limited to 'examples/example.cpp')
-rw-r--r-- | examples/example.cpp | 35 |
1 files changed, 33 insertions, 2 deletions
diff --git a/examples/example.cpp b/examples/example.cpp index b360adb..48b381c 100644 --- a/examples/example.cpp +++ b/examples/example.cpp @@ -10,9 +10,40 @@ class ExampleLogHandler : public crow::ILogHandler { } }; +struct ExampleMiddelware +{ + std::string message; + + ExampleMiddelware() + { + message = "foo"; + } + + void setMessage(std::string newMsg) + { + message = newMsg; + } + + struct context + { + }; + + void before_handle(crow::request& req, crow::response& res, context& ctx) + { + CROW_LOG_DEBUG << " - MESSAGE: " << message; + } + + void after_handle(crow::request& req, crow::response& res, context& ctx) + { + // no-op + } +}; + int main() { - crow::SimpleApp app; + crow::App<ExampleMiddelware> app; + + app.get_middleware<ExampleMiddelware>()->setMessage("hello"); CROW_ROUTE(app, "/") .name("hello") @@ -69,7 +100,7 @@ int main() }); // ignore all log - crow::logger::setLogLevel(crow::LogLevel::CRITICAL); + crow::logger::setLogLevel(crow::LogLevel::DEBUG); //crow::logger::setHandler(std::make_shared<ExampleLogHandler>()); app.port(18080) |