Tweak
publish / publish (push) Failing after 10m17s

This commit is contained in:
khodowany
2026-10-04 23:19:34 -05:00
parent 0dafa5da22
commit bff6884c09
5 changed files with 222 additions and 26 deletions
+12
View File
@@ -4,6 +4,8 @@
#include <chrono>
#include <cstdint>
#include <functional>
#include <map>
#include <optional>
#include <string>
#include <boost/asio/any_io_executor.hpp>
@@ -37,6 +39,14 @@ struct request {
ligo::http::method method{ligo::http::method::POST};
std::string target{"/"};
boost::json::value payload{};
std::map<std::string, std::string> headers{};
std::optional<std::string> raw_body{};
};
struct response {
std::uint16_t status{};
std::map<std::string, std::string> headers{};
std::string body{};
};
struct client_options {
@@ -50,12 +60,14 @@ struct server_options {
std::uint64_t max_body_size{16U * 1024U * 1024U};
std::function<void(modulus::error)> on_error{};
ligo::security_config security{};
bool parse_query{false};
};
class client {
public:
explicit client(ligo::http::endpoint endpoint, ligo::http::client_options options = {});
auto call(ligo::http::request const &request) const -> boost::asio::awaitable<std::expected<boost::json::value, modulus::error>>;
auto exchange(ligo::http::request const &request) const -> boost::asio::awaitable<std::expected<ligo::http::response, modulus::error>>;
private:
ligo::http::endpoint endpoint_{};
ligo::http::client_options options_{};
+6
View File
@@ -7,6 +7,8 @@
#include <mutex>
#include <string>
#include <utility>
#include <vector>
#include <cstdint>
#include <boost/asio/awaitable.hpp>
#include <boost/json/value.hpp>
@@ -20,11 +22,15 @@ struct request_context {
std::string peer{};
std::string method{};
std::string route{};
std::map<std::string, std::string> headers{};
std::map<std::string, std::string> query{};
};
struct service_response {
std::string content_type{"application/json"};
std::string body{};
std::uint16_t status{200};
std::vector<std::pair<std::string, std::string>> headers{};
};
class service_router {