6 releases
0.4.2 | Jul 4, 2023 |
---|---|
0.4.1 | Jun 21, 2023 |
0.3.1 | Jun 18, 2023 |
0.2.0 | Jun 11, 2023 |
0.1.1 |
|
#1353 in HTTP server
54 downloads per month
24KB
327 lines
goohttp
This library provides macros for easy router definition and, if enabled, an embedded compatible synchronous HttpServer, that uses the axum router for route management. This crate is NOT no_std compatible.
Features
By default this library only provides two macros for more convenient router creation.
esp
-> This feature enables the embedded compatible HttpServer.
Additional info for use in embedded development
stack overflow in pthread
Because this HttpServer uses async functions and the spawn function from tokio, you may get this error:
***ERROR*** A stack overflow in task pthread has been detected.
Fortunately, all you have to do is adjust the following value in your sdkconfig.defaults
which should have been generated when you used
this ESP32 template:
# 10000 has worked for my project so far but you can probably set it far lower
CONFIG_PTHREAD_TASK_STACK_SIZE_DEFAULT=10000
Reducing binary size
When using this library and other libraries, you may encounter another problem: you run out of memory. To fix this, you need to change some compiler settings. For that, I would suggest to have a look at this and this guide.
Dependencies
~6–15MB
~181K SLoC