|
|
Introduces AsyncHttpClient backed by curl_multi_perform driven by an
ASIO steady_timer. Supports callback-based and std::future-based APIs
for GET/POST/PUT/DELETE/HEAD, with both owned and external io_context
modes. All curl_multi state is serialized on an asio::strand, making
it safe with multi-threaded io_contexts.
Shared curl helpers (callbacks, URL encoding, header construction,
error mapping) extracted into httpclientcurlhelpers.h to eliminate
duplication between the sync and async implementations.
|