Simple HTTP/HTTPS server
This is a very minimal HTTP server. Optionally supports HTTPS server based on mbedTLS server example.
How to use
This directory is an ESP-IDF component. Clone it (or add it as a submodule) into the component directory of the project.
Enable TLS/SSL HTTPS server by uncommenting the
#define HTTPS_SERVER line at
https_server.h, otherwise it will implement unsecured http server. Server certificate and private key are loaded at
https_server.c directly into flash code as in the
open_ssl_server example from ESP-IDF repository. Don't forget to insert
prvtkey.pem at your main application directory if you want to run GET/POST examples.
None yet, but I tried to make the comments in the header file helpful.
Examples functions at http server:
GET Method Example
- Add http_server.c and http_server.h as a component into your project.
- Server initialization added into the example function, simply call it and it should work!
- Receiving a GET request at /, http server response is a "Hello World, from ESP32!" html.
POST Method Example
- As well as GET example, simply add http_server as a componente into your ESP-IDF project.
- Server initialization added into the POST example function, simply call it and don't worry.
- Post to / a pair of key-value where the key is 'key' and value some value you want to test. The example will show value content. If needed, increade log verbosity at
make menuconfigto show all parsed key-value pairs.
Increasing log level to "Verbose" should produce lots of output related to request handling.
GPL, see LICENSE file. Mostly because this is a very early version. Will be relicensed as something more reasonable later. mbedTLS are Apache 2.0 licensed.