Ligne 1, colonne 24
{/version,resource}- Variable:
version· Définie - Variable:
resource· Définie
Partie développée: /v1/search
URL / URI Tools
Saisissez un modèle et un objet JSON pour examiner l’URI et le résultat de chaque expression.
Les modèles et variables restent dans ce navigateur. Aucune adresse saisie ou produite n’est appelée.
Variables omises : Aucune
Clés JSON inutilisées : Aucune
Ligne 1, colonne 24
{/version,resource}version · Définieresource · DéfiniePartie développée: /v1/search
Ligne 1, colonne 43
{?q,page,tags*}q · Définiepage · Définietags* · DéfiniePartie développée: ?q=hello%20world&page=2&tags=red&tags=blue
2 expressions affichées sur 2
RFC 6570 niveau 4 : {var}, {+var}, {#var}, {.var}, {/var}, {;var}, {?var}, {&var}. :n limite le préfixe et * développe les listes ou les dictionnaires.
Limites en unités UTF-16 : modèle 16 384, JSON 65 536, résultat 262 144 ; au plus 500 expressions.
2 expressions · 0 variables omises · 75 unités en sortie
Un identifiant contenant une barre oblique ne se traite pas comme un chemin déjà structuré. Le test de modèle URI permet de vérifier cette distinction avec les valeurs réelles, avant qu’une mauvaise substitution ne change l’adresse utilisée par un client API.
La RFC 6570 détermine aussi comment une liste ou un dictionnaire devient une série de paramètres. Un modèle URI relatif est accepté : vous pouvez étudier une portion de chemin sans lui ajouter artificiellement un protocole ou un domaine.
Le test de modèle URI affiche la position et le résultat de chaque expression. Si un paramètre disparaît, vérifiez sa variable : absente, null ou collection vide. Une chaîne vide possède un état distinct, car elle reste définie au sens du standard.
{?tags} produit une valeur regroupée avec des virgules. {?tags*} répète le nom tags pour chaque élément. Avec un dictionnaire, les clés des membres deviennent les noms des paramètres. Les détails montrent ces fragments sans devoir relire toute l’adresse.
user.id désigne une clé portant ce nom complet, pas un objet imbriqué. Les séquences encodées dans les noms ne sont pas décodées. Respectez également la casse entre le modèle et les variables JSON.
L’exemple des caractères réservés conserve les barres obliques d’un chemin. Celui des valeurs composées montre listes, dictionnaires et préfixes Unicode. Le chargement passe par un aperçu ; après application, les anciennes entrées et leur résultat peuvent être restaurés une fois.
Le mode automatique attend 350 ms après une modification. Désactivez-le pour utiliser le bouton ou Ctrl/Cmd + Enter. Dès que les données changent, les anciens exports sont désactivés jusqu’à la réussite de la nouvelle expansion.
Le test de modèle URI traite l’expansion simple et les opérateurs +, #, ., /, ;, ? et &. :n retient de 1 à 9999 caractères Unicode ; * développe listes et dictionnaires. L’encodage pour cent et les séparateurs dépendent de l’opérateur choisi.
Les nombres JSON sont conservés sous leur forme textuelle. Ainsi, 9007199254740993 n’est pas arrondi, et -0 ou une notation exponentielle ne sont pas réécrits. Les booléens deviennent true ou false, sans conversion des nombres en virgule flottante.
Une erreur de syntaxe du modèle ou du JSON indique ligne et colonne. Les clés répétées sont rejetées ; les valeurs imbriquées sont identifiées par un JSON Pointer. Une variable non définie est signalée mais n’empêche pas une expansion valide, même si son fragment est vide.
La copie fournit seulement l’URI. Le rapport JSON contient le modèle, le texte JSON original, toutes les expressions et les noms omis ou inutilisés. L’affichage avance par groupes de 50 expressions, tandis que le téléchargement comprend toutes les entrées.
Conservez les accolades des expressions : /users/{id} contient une variable. /users/%7Bid%7D contient des accolades littérales encodées et n’est pas développé. Il ne faut pas encoder tout le modèle au préalable ; l’opérateur se charge de l’encodage des valeurs.
/ ajoute une barre oblique devant chaque variable définie, et devant chaque élément d’une liste avec *. L’expansion simple encode les barres à l’intérieur des valeurs. + les conserve, mais n’en ajoute aucune. Ce sont des comportements différents.
Aucun opérateur ne permet un séparateur facultatif arbitraire. Préparez une chaîne contenant les mots souhaités ; ses espaces deviendront %20. Une liste avec * utilise toujours le séparateur prévu par son opérateur, par exemple / ou &.
Une expression régulière seule ne vérifie pas les types des variables. {items:3} peut être syntaxiquement correct mais reste interdit si items est une liste. Cet outil vérifie conjointement les expressions et les variables, puis indique la position d’un échec.
La RFC 6570 définit le développement des variables en URI. L’opération inverse peut être ambiguë avec plusieurs variables, des caractères réservés ou des dictionnaires développés. Cette page n’extrait donc pas de paramètres de route depuis une URI.
Un problème ?
Comparez vos valeurs aux exemples de chemin ou de requête, puis conservez le rapport du résultat actuel.
Un modèle, un objet de variables, des fragments vérifiables.