Features Overview¶
The restcl library provides a modern, clean, header-only C++ interface for executing HTTP requests against RESTful endpoints.
Key Features¶
Construct HTTP requests directly from string literals using expressive suffixes like _GET, _POST, _PUT, and _DELETE.
Read more about User-Defined Literals :octicons-arrow-right-24:
First-class integration with nlohmann::json. Requests and responses structure headers, parameters, and content body seamlessly as JSON objects.
Execute requests synchronously or asynchronously using non-blocking I/O with callback functions.
Read more about Asynchronous Operations :octicons-arrow-right-24:
Zero overhead wrapper over native system HTTP engines:
- Windows: WinHTTP (WinHttpRESTClient)
- Unix/Linux/macOS: libcurl (HttpRESTClient)
Summary Matrix¶
| Feature | Description | Reference |
|---|---|---|
| User-Defined Literals | Suffix syntax ("url"_GET) for concise request creation |
Literals |
| JSON Payload Handling | Built-in serialization with nlohmann::json |
JSON Metaphor |
| Async Callbacks | Non-blocking execution using sendAsync |
Async Operations |
| Cross-Platform Factory | Unified GetRESTClient() creation |
GetRESTClient |