DOSSIER DE ROUTAGE DE LIEN COURT / REGISTRE DE REDIRECTION
Consigner une cible web publique derrière une courte route /s
Soumettez une URL HTTP ou HTTPS à l’éditeur. Le serveur applique assertPublicHttpUrl, exclut les cibles locales et privées et enregistre la cible normalisée si la création réussit. Une cible d’apparence publique ne dit pas que toute destination publique est acceptée, répond ou reste inchangée ensuite.
Ouvrir le raccourcisseur d’URL
- Entrée de cible HTTP ou HTTPS
- Sortie : file-tools24.com/s/:shortCode
- 301 succès · 404 absent, expiré ou rejeté
Dossier de routage de lien court
01 · SOUMISSION DE CIBLE
URL HTTP ou HTTPS → assertPublicHttpUrl → valeur normalisée enregistrée après une création réussie.
02 · ENTRÉE DE CODE
Code aléatoire ou alias accepté devient l’enregistrement de code court.
03 · CHEMIN DE RÉSOLUTION
GET /s/:shortCode → getOriginalUrl → 301 vers la cible enregistrée lorsqu’elle est renvoyée.
La cible enregistrée est vérifiée à nouveau lors de la résolution. Un enregistrement rejeté, absent ou expiré renvoie 404 ; une exception renvoie 500.
De la cible soumise à la réponse de redirection
Ce dossier décrit le chemin implémenté de stockage et de résolution. Il ne décrit ni le contenu de la cible, ni une chaîne de redirections, ni la réponse d’une cible.
1. Vérifier et normaliser la cible
La création accepte seulement une URL HTTP ou HTTPS. assertPublicHttpUrl exclut les cibles réseau locales et privées, puis la chaîne URL normalisée est enregistrée. Cette vérification est une limite, pas une affirmation sur toute cible publique.
2. Écrire un enregistrement de code court
Sans alias, le service commence avec six caractères alphanumériques et vérifie les collisions jusqu’à dix tentatives ; à cette limite il génère un code de huit caractères. Cette procédure n’est pas une affirmation absolue d’unicité.
3. Résoudre la route /s
GET /s/:shortCode appelle getOriginalUrl. Il vérifie l’expiration et appelle encore assertPublicHttpUrl sur la cible enregistrée. Une cible renvoyée reçoit 301 ; un enregistrement absent, expiré ou rejeté reçoit 404, sauf exception avec 500.
Grammaire du code et saisie d’expiration
Les champs facultatifs sont enregistrés avec le lien court. Ils ne créent pas d’interface de modification ou de gestion d’échéance.
ALÉATOIRE — Six, puis huit à la limite de recherche
Le code généré initial comporte six lettres ou chiffres. La vérification de collision peut faire dix tentatives ; le chemin de limite crée huit caractères.
ALIAS — 3–50 lettres, chiffres ou traits d’union
Un alias doit respecter cette grammaire. Un code déjà présent est refusé au lieu d’être réattribué.
EXPIRATION — Date facultative enregistrée
Une expiration facultative est enregistrée. Une fois son heure passée, getOriginalUrl renvoie null et le point /s répond 404.
Le statut de résolution est un résultat de routage restreint
Le point n’a que le chemin de réponse suivant. Il n’affirme pas le contenu de destination, les chaînes de redirections ou la réponse d’une destination.
301 — Cible renvoyée
Lorsque getOriginalUrl renvoie la cible enregistrée après ses vérifications, GET /s/:shortCode envoie une redirection 301 vers cette URL.
404 — Aucun enregistrement résoluble
Un code absent, un enregistrement expiré ou une cible enregistrée rejetée lors de la vérification renouvelée produit 404.
500 — Chemin d’exception
Si la route rencontre une exception, elle envoie 500. Ce chemin est distinct du résultat 404.
Compteur enregistré et limite de propriété
L’enregistrement contient un champ clicks et, lorsque la création a un contexte authentifié, une userId. Ce sont des comportements restreints de l’enregistrement.
CLICKS +1 — Un incrément après une redirection réussie
Chaque redirection réussie incrémente de un le champ clicks enregistré.
UN COMPTEUR — Pas un rapport de visiteurs ou de campagnes
Le champ clicks est uniquement un compteur enregistré ; aucune conclusion supplémentaire n’en découle.
PROPRIÉTAIRE — La gestion est liée à la propriété authentifiée
La création est publique. Avec un contexte authentifié, userId est enregistrée ; list renvoie seulement les liens de cet utilisateur et delete exige la même userId. Sans ce contexte, la création fonctionne mais list ne renvoie aucun lien propre gérable.
Sortie navigateur après création
Après une création réussie, le navigateur crée une URL de données QR pour l’URL courte renvoyée en 300px avec marge 2. L’éditeur propose aussi la copie et le téléchargement PNG. La sortie QR représente cette route renvoyée, sans affirmation de lecture ni de persistance.
Notes de périmètre pour cet enregistrement de routage
- Seule une entrée de cible HTTP et HTTPS atteint la vérification serveur.
- Une cible d’apparence publique peut être refusée, ne pas répondre ou changer ensuite.
- Aucune affirmation n’est faite sur le contenu de destination ou un chemin de redirection ultérieur.
- La génération de code, l’alias et l’expiration ont un comportement limité.
Poursuivre avec des outils webmaster voisins
Chaque outil lié a son propre chemin d’entrée et de résultat.
- Générateur de code QR
Créer une représentation QR pour des données saisies prises en charge et vérifier l’image renvoyée.
- Recherche DNS
Lire les enregistrements DNS renvoyés par le chemin de résolveur configuré.
- Vérificateur SSL
Consigner des champs de certificat depuis un chemin HTTPS de handshake limité.
Questions sur le routage de lien court
Le service accepte-t-il toute URL publique ?
Non. Création et résolution appellent assertPublicHttpUrl et excluent les cibles locales et privées. Réussir ou paraître public n’établit pas que toute cible publique est acceptée, répond ou reste inchangée.
Quelle forme prend une URL courte renvoyée ?
Le résultat de création utilise exactement https://file-tools24.com/s/:shortCode, avec le code de l’enregistrement à la place de :shortCode.
Que se passe-t-il après une date d’expiration ?
L’expiration est enregistrée avec l’enregistrement. Lorsqu’elle est passée, getOriginalUrl renvoie null et GET /s/:shortCode répond 404.
Qui peut lister ou supprimer un lien créé ?
La création publique peut avoir lieu sans contexte authentifié. Seul un contexte authentifié reçoit ses liens via list, et la suppression est limitée à un enregistrement ayant la même userId enregistrée.