AsyncWebServer : appeler un paramètre par son nom

Bonsoir,

pas trouvé tout seul pourtant je parie que c'est évident :frowning:

Quand avec AsyncWebServer je poste un formulaire, je peux récupérer les paramètres POST avec un code du type :

  server.on("/prefs.html", HTTP_POST, [](AsyncWebServerRequest *request){
     AsyncWebParameter* p = request->getParam(i);

     Serial.println(p->name());   // nom du paramètre  (par ex 'prenom')
     Serial.println(p->value());  // valeur (par ex. Toto)

pour avoir le paramètre de rang i

Sauf que ce n'est pas pratique, je préférerai pouvoir faire un truc du genre

request->getParam('prenom')->value();

C'est sûrement possible mais comment ?

Un truc du genre


if(request->hasParam("prenom", true)) {
  AsyncWebParameter* p = request->getParam("prenom", true);
  …
}

Cf la doc dans le GitHub

Merci, ce sera pour mes tests de demain !

Merci, ça marche !

Cool
Comme quoi lire la doc ça sert parfois :innocent:

Il y a aussi :

if(request->hasParam("prenom", true)) {
  String prenom = request->arg("prenom");
  …
}