diff --git a/src/mergerfs_webui.cpp b/src/mergerfs_webui.cpp index 4aa69d71..0985a8d1 100644 --- a/src/mergerfs_webui.cpp +++ b/src/mergerfs_webui.cpp @@ -71,6 +71,20 @@ mergerfs::webui::main(const int argc_, http_server.Get("/",::_serve_root); http_server.Get("/mounts",::_serve_mounts); http_server.Get("/kvs",::_serve_kvs); + http_server.Post("/update", [&](const Request& req, Response& res) { + try { + auto j = json::parse(req.body); + std::string key = j["key"]; + std::string value = j["value"]; + kv_data[key] = value; + std::cout << "Updated " << key << " to " << value << std::endl; + res.set_content("OK", "text/plain"); + } catch (const std::exception& e) { + res.status = 400; + res.set_content("Invalid JSON", "text/plain"); + } + }); + http_server.listen(host,port);