|
idfxx 1.0.0
Modern C++23 components for ESP-IDF
|
HTTPS server with TLS support. More...
Classes | |
| struct | config |
| HTTPS server configuration. More... | |
Public Member Functions | |
| ssl_server (config cfg) | |
| Creates and starts an HTTPS server. | |
| ~ssl_server () override=default | |
| ssl_server (const ssl_server &)=delete | |
| ssl_server & | operator= (const ssl_server &)=delete |
| ssl_server (ssl_server &&) noexcept=default | |
| Move constructor. | |
| ssl_server & | operator= (ssl_server &&) noexcept=default |
| Move assignment. | |
Public Member Functions inherited from idfxx::http::server | |
| server (config cfg) | |
| Creates and starts an HTTP server. | |
| virtual | ~server () |
| Stops the server and releases all resources. | |
| server (const server &)=delete | |
| server & | operator= (const server &)=delete |
| server (server &&) noexcept | |
| Move constructor. | |
| server & | operator= (server &&) noexcept |
| Move assignment. | |
| void | on (enum method m, std::string uri, handler_type handler) |
| Registers a URI handler for a specific HTTP method. | |
| void | on_any (std::string uri, handler_type handler) |
| Registers a URI handler that matches any HTTP method. | |
| void | on_get (std::string uri, handler_type handler) |
| Registers a GET handler. | |
| void | on_post (std::string uri, handler_type handler) |
| Registers a POST handler. | |
| void | on_put (std::string uri, handler_type handler) |
| Registers a PUT handler. | |
| void | on_patch (std::string uri, handler_type handler) |
| Registers a PATCH handler. | |
| void | on_delete (std::string uri, handler_type handler) |
| Registers a DELETE handler. | |
| void | on_head (std::string uri, handler_type handler) |
| Registers a HEAD handler. | |
| result< void > | try_on (enum method m, std::string uri, handler_type handler) |
| Registers a URI handler for a specific HTTP method. | |
| result< void > | try_on_any (std::string uri, handler_type handler) |
| Registers a URI handler that matches any HTTP method. | |
| result< void > | try_on_get (std::string uri, handler_type handler) |
| Registers a GET handler. | |
| result< void > | try_on_post (std::string uri, handler_type handler) |
| Registers a POST handler. | |
| result< void > | try_on_put (std::string uri, handler_type handler) |
| Registers a PUT handler. | |
| result< void > | try_on_patch (std::string uri, handler_type handler) |
| Registers a PATCH handler. | |
| result< void > | try_on_delete (std::string uri, handler_type handler) |
| Registers a DELETE handler. | |
| result< void > | try_on_head (std::string uri, handler_type handler) |
| Registers a HEAD handler. | |
| void | unregister_handler (enum method m, std::string_view uri) |
| Unregisters a URI handler. | |
| result< void > | try_unregister_handler (enum method m, std::string_view uri) |
| Unregisters a URI handler. | |
| void | close_session (int sockfd) |
| Closes a client session by socket file descriptor. | |
| result< void > | try_close_session (int sockfd) |
| Closes a client session by socket file descriptor. | |
| httpd_handle_t | idf_handle () const noexcept |
| Returns the underlying ESP-IDF HTTP server handle. | |
Static Public Member Functions | |
| static result< ssl_server > | make (config cfg) |
| Creates and starts an HTTPS server. | |
Static Public Member Functions inherited from idfxx::http::server | |
| static result< server > | make (config cfg) |
| Creates and starts an HTTP server. | |
Additional Inherited Members | |
Public Types inherited from idfxx::http::server | |
| enum class | errc : esp_err_t { handlers_full = 0xb001 , handler_exists = 0xb002 , invalid_request = 0xb003 , result_truncated = 0xb004 , resp_header = 0xb005 , resp_send = 0xb006 , alloc_mem = 0xb007 , task = 0xb008 } |
| Error codes for HTTP server operations. More... | |
| using | handler_type = std::move_only_function< result< void >(request &) const > |
| Handler function type for URI handlers. | |
HTTPS server with TLS support.
Extends server with TLS encryption. Inherits all handler registration, request/response, WebSocket, and session management APIs.
Functions taking server& accept both HTTP and HTTPS servers, while functions requiring ssl_server& enforce that only HTTPS servers are used.
Certificate data (PEM strings) is consumed during server creation — ESP-IDF copies all certificate buffers internally, so the strings do not need to outlive the call.
Definition at line 53 of file ssl_server.hpp.
|
explicit |
Creates and starts an HTTPS server.
| cfg | Server configuration including TLS certificates. |
| std::system_error | on failure. |
|
overridedefault |
|
delete |
|
defaultnoexcept |
Move constructor.
Transfers server ownership.
|
static |
Creates and starts an HTTPS server.
| cfg | Server configuration including TLS certificates. |
|
delete |
|
defaultnoexcept |
Move assignment.
Transfers server ownership.