CROW_ROUTE(app,"/hello/<int>") ([](int count){ if (count > 100) return crow::response(400); std::ostringstream os; os << count << " bottles of beer!"; return crow::response(os.str()); });
Handler arguments type check at compile time
1 2 3 4 5
// Compile error with message "Handler type is mismatched with URL paramters" CROW_ROUTE(app,"/another/<int>") ([](int a, int b){ return crow::response(500); });
Handling JSON Requests
1 2 3 4 5 6 7 8 9 10 11
CROW_ROUTE(app, "/add_json") .methods("POST"_method) ([](const crow::request& req){ auto x = crow::json::load(req.body); if (!x) return crow::response(400); int sum = x["a"].i()+x["b"].i(); std::ostringstream os; os << sum; return crow::response{os.str()}; });