diff --git a/src/store.cpp b/src/store.cpp index b6b7900..9deb6db 100644 --- a/src/store.cpp +++ b/src/store.cpp @@ -29,32 +29,24 @@ int Application::run() { auto store = json::object(); std::vector servers; - if (https_server) { - https_server->default_resource["GET"] = - [](std::shared_ptr response, ...) { - return response::not_found(response); - }; - - https_server->default_resource["POST"] = - [](std::shared_ptr response, ...) { + for (const auto &r : {"GET", "POST", "PUT", "PATCH", "OPTIONS", "HEAD"}) { + if (https_server) { + https_server->default_resource[r] = + [](std::shared_ptr response, ...) { + return response::not_found(response); + }; + } + http_server.default_resource[r] = + [](std::shared_ptr response, ...) { return response::not_found(response); }; + } + if (https_server) { servers.emplace_back( [&]() { https_server->start(secure_web_server_started); }); } - http_server.default_resource["GET"] = - [](std::shared_ptr response, ...) { - return response::not_found(response); - }; - - http_server.default_resource["POST"] = - [&](std::shared_ptr response, ...) { - return response::not_found(response); - }; - - servers.emplace_back([&]() { http_server.start(web_server_started); }); for (auto &server : servers) {