Utilisez q=blue%20shoes&plus=a%2Bb&symbol=%E2%89%A1 avec le profil composant. Percent-20 devient une espace, percent-2B un plus littéral et les octets UTF-8 E2 89 A1 le symbole ≡. Aucune substitution plus-espace n’est requise. Notez le profil choisi et comparez ensemble la source, les lignes décodées et la requête canonique. Ces preuves rendent un écart reproductible sans prétendre définir l’interprétation de chaque serveur, framework ou système de signature.
Vérifiez trois valeurs décodées
Les lignes sont q → blue shoes, plus → a+b et symbol → ≡. Les noms sont ASCII, mais QueryLens applique le même décodage strict aux noms et valeurs. Il indique trois paires, trois noms uniques et aucun nom répété. Conservez les noms répétés sous forme de lignes ordonnées jusqu’à ce que l’application destinataire définisse sa politique. Une conversion précoce en objet simple peut perdre des valeurs, changer leur ordre ou masquer l’absence de signe égal dans la requête d’origine.
La sortie canonique utilise des échappements majuscules
La sortie canonique est ?q=blue%20shoes&plus=a%2Bb&symbol=%E2%89%A1. Elle garde l’ordre, écrit les espaces en percent-20 et utilise l’hexadécimal majuscule. La canonisation est une représentation déterministe, pas une preuve de l’écriture d’origine. Un décodage réussi établit seulement le texte produit par ces règles explicites. Il ne valide pas une URL cible, n’autorise aucune redirection, ne vérifie aucune signature, ne détecte pas une attaque et ne prouve pas qu’une autre implémentation applique les mêmes limites.
Modifiez un octet pour voir l’échec strict
Remplacer symbol par percent-E2-percent-28-percent-A1 crée un UTF-8 invalide bien que chaque échappement ait deux chiffres. L’analyseur signale l’erreur et ne produit ni lignes partielles, requête canonique ou JSON. Cela diffère d’un échappement mal formé comme percent-GG. QueryLens transforme localement et n’envoie aucun contenu à un backend produit. Vérifiez néanmoins le résultat copié : les données peuvent contenir des identifiants, recherches ou textes sensibles, et la destination reste responsable de la validation et du contrôle d’accès.