![]() |
Kurlyk
|
Contains utility functions for handling HTTP requests, rate limiting, and request cancellation. More...
Go to the source code of this file.
Namespaces | |
| namespace | kurlyk |
| Primary namespace for the Kurlyk library, encompassing initialization, request management, and utility functions. | |
Macros | |
| #define | _KURLYK_HTTP_UTILS_HPP_INCLUDED |
Functions | |
| long | kurlyk::create_rate_limit (long requests_per_period, long period_ms) |
| Creates a rate limit with specified parameters. | |
| long | kurlyk::create_rate_limit_rpm (long requests_per_minute) |
| Creates a rate limit based on Requests Per Minute (RPM). | |
| long | kurlyk::create_rate_limit_rps (long requests_per_second) |
| Creates a rate limit based on Requests Per Second (RPS). | |
| bool | kurlyk::remove_limit (long limit_id) |
| Removes an existing rate limit with the specified identifier. | |
| uint64_t | kurlyk::generate_request_id () |
| Generates a new unique request ID. | |
| void | kurlyk::set_max_pending_requests (std::size_t max_pending_requests) |
| Sets the maximum number of requests accepted into the global pending queue. | |
| std::size_t | kurlyk::max_pending_requests () |
| Returns the current global pending queue limit. | |
| void | kurlyk::cancel_request_by_id (uint64_t request_id, std::function< void()> callback) |
| Cancels a request by its unique identifier. | |
| std::future< void > | kurlyk::cancel_request_by_id (uint64_t request_id) |
| Cancels a request by its unique identifier and returns a future. | |
| HttpResponsePtr | kurlyk::make_submit_error_response (const SubmitResult &submit_result) |
| Creates a ready HTTP response describing a synchronous submission rejection. | |
| void | kurlyk::safe_set_response (std::shared_ptr< std::promise< HttpResponsePtr > > promise, HttpResponsePtr response) |
| Safely sets an HTTP response on the provided promise. | |
| SubmitResult | kurlyk::submit_http_request (std::unique_ptr< HttpRequest > request_ptr, HttpResponseCallback callback) |
| Attempts to submit an HTTP request and reports the admission result. | |
| bool | kurlyk::http_request (std::unique_ptr< HttpRequest > request_ptr, HttpResponseCallback callback) |
| Sends an HTTP request with callback. | |
| std::future< HttpResponsePtr > | kurlyk::http_request (std::unique_ptr< HttpRequest > request_ptr) |
| Sends an HTTP request asynchronously and returns a future with the response. | |
| uint64_t | kurlyk::http_request (const std::string &method, const std::string &url, const QueryParams &query, const Headers &headers, const std::string &content, HttpResponseCallback callback) |
| Sends an HTTP request with detailed parameters and a callback. | |
| uint64_t | kurlyk::http_request (const std::string &method, const std::string &url, const QueryParams &query, const Headers &headers, const std::string &content, bool streaming, HttpResponseCallback callback) |
| Sends an HTTP request with detailed parameters, streaming mode, and a callback. | |
| std::pair< uint64_t, std::future< HttpResponsePtr > > | kurlyk::http_request (const std::string &method, const std::string &url, const QueryParams &query, const Headers &headers, const std::string &content) |
| Sends an HTTP request asynchronously with detailed parameters and returns a future. | |
| uint64_t | kurlyk::http_request (const std::string &method, const std::string &host, const std::string &path, const QueryParams &query, const Headers &headers, const std::string &content, HttpResponseCallback callback) |
| Sends an HTTP request with a specified host, path, and callback. | |
| uint64_t | kurlyk::http_request (const std::string &method, const std::string &host, const std::string &path, const QueryParams &query, const Headers &headers, const std::string &content, bool streaming, HttpResponseCallback callback) |
| Sends an HTTP request with host/path parameters, streaming mode, and a callback. | |
| uint64_t | kurlyk::http_get (const std::string &url, const QueryParams &query, const Headers &headers, HttpResponseCallback callback) |
| Sends an asynchronous HTTP GET request with a callback. | |
| uint64_t | kurlyk::http_get (const std::string &url, const QueryParams &query, const Headers &headers, bool streaming, HttpResponseCallback callback) |
| Sends an asynchronous HTTP GET request with streaming callbacks. | |
| std::pair< uint64_t, std::future< HttpResponsePtr > > | kurlyk::http_get (const std::string &url, const QueryParams &query, const Headers &headers) |
| Sends an asynchronous HTTP GET request and returns a future with the response. | |
| uint64_t | kurlyk::http_post (const std::string &url, const QueryParams &query, const Headers &headers, const std::string &content, HttpResponseCallback callback) |
| Sends an asynchronous HTTP POST request with a callback. | |
| uint64_t | kurlyk::http_post (const std::string &url, const QueryParams &query, const Headers &headers, const std::string &content, bool streaming, HttpResponseCallback callback) |
| Sends an asynchronous HTTP POST request with streaming callbacks. | |
| std::pair< uint64_t, std::future< HttpResponsePtr > > | kurlyk::http_post (const std::string &url, const QueryParams &query, const Headers &headers, const std::string &content) |
| Sends an asynchronous HTTP POST request and returns a future with the response. | |
Contains utility functions for handling HTTP requests, rate limiting, and request cancellation.
These helpers are defined inline so including this header in multiple translation units does not violate the One Definition Rule.
Definition in file utils.hpp.