fix crash due to memory issues by using heap - dynamic json

This commit is contained in:
Nicu Hodos 2025-09-08 12:21:10 +02:00
parent 74f1dc1553
commit 10afc57b65

View File

@ -9,9 +9,6 @@
AsyncWebServer server(80); AsyncWebServer server(80);
namespace WebServer { namespace WebServer {
void notFound(AsyncWebServerRequest *request) {
request->send(404, "text/plain", "Not found");
}
void setup() { void setup() {
@ -34,7 +31,7 @@ namespace WebServer {
server.on("/commands", HTTP_GET, [](AsyncWebServerRequest *request) { server.on("/commands", HTTP_GET, [](AsyncWebServerRequest *request) {
AsyncResponseStream *response = request->beginResponseStream("application/json"); AsyncResponseStream *response = request->beginResponseStream("application/json");
StaticJsonDocument<JSON_SIZE*8> jsonResponse; DynamicJsonDocument jsonResponse(JSON_SIZE*10);
JsonArray array = jsonResponse.to<JsonArray>(); JsonArray array = jsonResponse.to<JsonArray>();
for (auto it = Command::mapCommandIds.begin(); it != Command::mapCommandIds.end(); ++it) { for (auto it = Command::mapCommandIds.begin(); it != Command::mapCommandIds.end(); ++it) {
StaticJsonDocument<JSON_SIZE/2> jsonDoc; StaticJsonDocument<JSON_SIZE/2> jsonDoc;
@ -46,7 +43,9 @@ namespace WebServer {
request->send(response); request->send(response);
}); });
server.onNotFound(notFound); server.onNotFound([](AsyncWebServerRequest *request) {
request->send(404, "text/plain", "Not found");
});
server.begin(); server.begin();
} }