Aller au contenu
Tout en local

Expanseur de modèles URI

Développez un modèle URI RFC 6570 en une URL réelle en utilisant les variables que vous fournissez.

Entrée
Variables
Sortie

Expanseur de modèles URI

Collez un modèle URI —le format utilisé par OpenAPI/Swagger dans les définitions de liens, les URI de redirection OAuth, les configurations de webhooks et les API hypermedia (HAL, Hydra, JSON:API)— et cet outil développe ses {expressions} en une URL réelle. Il implémente RFC 6570 complètement, y compris les opérateurs de chemin, chaîne de requête, paramètre de chemin, libellé et fragment, donc un modèle comme "/users/{id}{?fields,tags*}" se développe exactement comme l'aurait fait une bibliothèque client conforme.

Les valeurs de variable vont dans le panneau de droite, un "key=value" par ligne. Une valeur simple est une chaîne ; enveloppez une liste séparée par des virgules entre crochets ("tags=[dev,admin]") pour les variables de liste, et utilisez des accolades avec des paires séparées par "|" ("keys={role=admin|team=core}") pour les variables associatives. L'option de niveau de modèle (1 à 4) vérifie quelles fonctionnalités RFC 6570 une expression a vraiment besoin et signale celles qui dépassent votre niveau choisi —utile lorsque vous ciblez un client qui n'implémente qu'un niveau inférieur. Encoder en pourcentage les caractères réservés force un codage strict même dans les expansions normalement indulgentes "+" et "#" ; omettre les variables vides supprime une variable qui se résout en une chaîne vide au lieu de laisser un paramètre nu.

Sous l'URL développée, l'outil liste toujours quelles variables ont été référencées mais jamais fournies ("missing") et lesquelles ont été fournies mais jamais utilisées par le modèle ("unused") —le moyen le plus rapide de détecter une faute de frappe dans le modèle ou la liste de variables. Les terminaisons de ligne, les modificateurs de préfixe ("{var:3}") et les modificateurs d'explosion ("{list*}", "{keys*}") sont tous traités selon la spécification, et un modèle malformé (accolades déséquilibrées, expression vide, opérateur non supporté) retourne une erreur en langage naturel au lieu d'un résultat vide.

Tout s'exécute localement dans votre navigateur —le modèle et ses variables ne sont jamais téléchargés nulle part. Copiez l'URL développée, téléchargez-la en tant que fichier .txt, ou envoyez-la directement dans l'entrée d'un autre outil pour continuer à travailler dessus.

FAQ

Qu'est-ce qu'un modèle URI ?
Un modèle URI (RFC 6570) est un motif d'URL avec des {placeholders} qui sont remplis avec des valeurs réelles —le format que les API utilisent pour documenter les points de terminaison paramétrés, comme "/users/{id}".
Quels opérateurs supporte-t-il ?
Tous : expansion simple, "+" (caractères réservés autorisés), "#" (fragment), "." (libellé), "/" (segments de chemin), ";" (paramètres de style de chemin), "?" (chaîne de requête) et "&" (continuation de requête).
Comment puis-je fournir une liste ou un objet comme valeur de variable ?
Enveloppez une liste entre crochets, par ex. "tags=[dev,admin]". Enveloppez un objet entre accolades avec "|" entre les paires, par ex. "keys={role=admin|team=core}" —une valeur simple reste une chaîne simple.
Que se passe-t-il si une variable utilisée dans le modèle n'a pas de valeur ?
Elle est développée comme vide et listée sous "Missing" (Manquantes) sous le résultat, afin que vous puissiez voir en un coup d'œil quelles valeurs vous devez encore fournir.
Mon modèle URI ou mes données de variable sont-ils téléchargés quelque part ?
Non. L'expansion s'exécute entièrement dans votre navigateur —le modèle et ses variables ne quittent jamais votre appareil.