Bonsoir, Bonjour,
Sur un serveur web qui traite de data au travers d'un champ texte. Quand je tape "test@essai1234", je reçois "test%40essai1234".
Donc, recherche autour de l'ASCII, j'ai testé quelques conversions, elles sont basé sur du pointeur de char. Mais mon cas est un peu différent, j'y revendrais ensuite.
J'ai cherché autour de la récupération d'URL, car bien souvent le problème est aussi présent là. Mais comme je passe par du POST, je n'ai pas trouvé de solution, et toujours du pointeur de char*.
A un moment donné, j'ai testé quelques conversion sur la chaine String de retour. Sans succès.
Donc, là, faut que je trouve une solution adhéquate, simple et qui ne rentre pas dans la surcharge absolu du code.
Voyons ce que j'ai fait dans mon serveur:
String requestBody;
while(client.available()){
requestBody += (char)client.read(); // Mise en forme de la réception
// On peut imaginer prendre le charactère reçu, l'envoyer dans une fonction, retourner sa valeur texte dans la String. C'est la solution 1, mais comment faire ?
}
if(requestBody.length()){
Serial.println(requestBody); // Affichage du contenu de la String, "@" est devenu "%40" !!!
// Ici, on peut imaginer prendre le contenu de la string, la parcourir et remplacer le "%40" par sa valeur, ici l'@. Mais dans ce cas, comment le faire sans tomber sans la succession de String.replace() ?
}
Dans mes commentaires, j'évoque 2 solutions. Je ne sais pas s'il en existe d'autres. Mais ça m'intéresserais quand même d'y travailler un peu.
Merci pour votre attention.