From 34080cae33fabd0204177ebf10e24d16ef8cfe48 Mon Sep 17 00:00:00 2001 From: Nicholas Hahn Date: Fri, 9 Aug 2024 17:55:19 -0300 Subject: [PATCH] This adds an Post function with URL encoded URL that also sends the body content-type --- httplib.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/httplib.h b/httplib.h index 4af592a..c84ffdc 100644 --- a/httplib.h +++ b/httplib.h @@ -1186,6 +1186,8 @@ public: const Params ¶ms); Result Post(const std::string &path, const Headers &headers, const Params ¶ms, Progress progress); + Result Post(const std::string &path, const Params ¶ms, + const std::string &body, const std::string &content_type); Result Post(const std::string &path, const MultipartFormDataItems &items); Result Post(const std::string &path, const Headers &headers, const MultipartFormDataItems &items); @@ -1611,6 +1613,8 @@ public: const Params ¶ms); Result Post(const std::string &path, const Headers &headers, const Params ¶ms, Progress progress); + Result Post(const std::string &path, const Params ¶ms, + const std::string &body, const std::string &content_type); Result Post(const std::string &path, const MultipartFormDataItems &items); Result Post(const std::string &path, const Headers &headers, const MultipartFormDataItems &items); @@ -8007,6 +8011,13 @@ inline Result ClientImpl::Post(const std::string &path, const Headers &headers, progress); } +inline Result ClientImpl::Post(const std::string &path, const Params ¶ms, + const std::string &body, + const std::string &content_type) { + std::string path_with_query = append_query_params(path, params); + return Post(path_with_query, Headers(), body, content_type); +} + inline Result ClientImpl::Post(const std::string &path, const MultipartFormDataItems &items) { return Post(path, Headers(), items); @@ -9525,6 +9536,11 @@ inline Result Client::Post(const std::string &path, const Headers &headers, const Params ¶ms, Progress progress) { return cli_->Post(path, headers, params, progress); } +inline Result Client::Post(const std::string &path, const Params ¶ms, + const std::string &body, + const std::string &content_type) { + return cli_->Post(path, params, body, content_type); +} inline Result Client::Post(const std::string &path, const MultipartFormDataItems &items) { return cli_->Post(path, items);