URL et chaînes de requête

URL et chaînes de requête

URL et chaînes de requête

La couche URL implémente l’analyse de type WHATWG — le même comportement que les navigateurs — de sorte que les URL extraites des documents sont résolues et normalisées comme elles le seraient dans un véritable agent utilisateur.


Analyse et validation

URL.parse() analyse une URL absolue ou relative; URL.can_parse() indique la validité sans construire d’objet. Les échecs d’analyse déclenchent l’exception typée URLParseError.

Chaînes de requête

URLSearchParams lit et modifie les paramètres de requête: append(), get(), get_all(), has() et delete() couvrent le cycle complet, en préservant la sémantique à valeurs multiples.


Conseils et bonnes pratiques

  • Utilisez can_parse() pour une validation peu coûteuse dans les filtres; construisez avec parse() uniquement lorsque vous avez besoin des composants
  • Rappelez-vous que les clés de requête peuvent se répéter — utilisez get_all() lorsqu’un paramètre peut apparaître plusieurs fois
  • Capturez URLParseError plutôt que de pré-valider avec des expressions régulières

Problèmes courants

ProblèmeCauseCorrection
L’URL relative ne parvient pas à être analyséeAucune base fournieFournissez la base selon URL.parse()
Seule la première valeur de requête est renvoyéeUtilisé get() sur une clé répétéeUtilisez get_all()
Caractères bizarres dans les composantsNormalisation WHATWG en actionAttendu — cela correspond au comportement du navigateur

FAQ

L’analyse suit-elle la norme WHATWG?

Oui — la normalisation et la division des composants reflètent le comportement du navigateur.

Comment vérifier une URL sans l’analyser?

URL.can_parse() renvoie la validité sans construction d’objet.

Puis-je modifier une chaîne de requête en place?

Oui — URLSearchParams prend en charge les allers-retours append/get/has/delete.


API Reference Résumé

Classe/MéthodeDescription
URL.parseAnalyser une URL
URL.can_parseVérification de validité sans construction
URLSearchParams.appendAjouter un paramètre de requête
URLSearchParams.get_allToutes les valeurs d’une clé
URLParseErrorÉchec d’analyse typée

Voir aussi

 Français