Je vous donne ma solution qui sera peut être utile à une autre personne!
J'ai créé une fonction qui me permet de créer la première partie de mon json dans un fichier .txt (filename):
void storeJsonHeaderToSDCard(fs::FS &fs) {
File file;
file = fs.open(fileName, FILE_APPEND);
file.print("{\"UnNomLibre\":\"");
file.close();
}
Remplacer un nom libre par le nom désiré.
J’ appels cette fonction au lancement de ma mesure:
storeJsonHeaderToSDCard(SD);
J'écris dans mon fichier les données voulues
Ensuite je crée une fonction de fermeture de mon JSON:
void storeJsonFooterToSDCard(fs::FS &fs) {
File file;
file = fs.open(fileName, FILE_APPEND);
file.print("\"}");
file.close();
}
J’ appels cette fonction à la fin de ma mesure:
storeJsonFooterToSDCard(SD);
Ensuite on fait l'envoi du fichier:
server.on("/requestGraph", HTTP_GET, [](AsyncWebServerRequest *request) {
request->send(SD, fileName, "text/plain");
});
Et côté javascript il suffit de récupérer le JSON et de le traiter!
Merci de m'avoir mis sur la piste!