Web Server API¶
HTTP server for WiFi captive portal and configuration interface. Key features:
Architecture: Implements HTTP server and DNS server for captive portal (AP mode). Serves static web assets from flash. Provides REST API endpoints for configuration, WiFi setup, and LED state. Integrates with config_manager and wifi_manager. Designed for modular, component-based ESP-IDF architecture. |
Lifecycle Functions¶
Initialize web server with embedded static assets. Signature: esp_err_t web_server_init(const web_server_config_t *config);
Parameters:
Returns:
Note Sets up all URI handlers for static files and API endpoints. |
Start web server and DNS server for captive portal. Signature: esp_err_t web_server_start(void);
Parameters:
Returns:
Note Starts DNS server for captive portal in AP mode. |
Stop web server and DNS server. Signature: esp_err_t web_server_stop(void);
Parameters:
Returns:
Note Safe to call multiple times or when servers are not running. |
Check if web server is currently running. Signature: bool web_server_is_running(void);
Parameters:
Returns:
|
Get the current HTTP server port number. Signature: uint16_t web_server_get_port(void);
Parameters:
Returns:
|
Static File Handler¶
HTTP handler for serving embedded static files. Signature: esp_err_t static_file_handler(httpd_req_t *req);
Parameters:
Returns:
Note Serves HTML, CSS, and JS files from embedded flash. Sets MIME types and cache headers. |
Data Types¶
Web server configuration structure. Definition: typedef struct {
uint16_t port;
size_t max_open_sockets;
} web_server_config_t;
Fields:
|