Qu'est-ce que Encodeur/Décodeur d'Entités HTML ?
Un encodeur/décodeur d'entités HTML convertit les caractères spéciaux tels que <, >, & et les guillemets en leurs équivalents d'entités HTML (et inversement). Cela prévient les vulnérabilités XSS lors de l'intégration de contenu utilisateur dans du HTML et corrige les problèmes d'affichage des caractères spéciaux.
L'encodeur transforme les caractères comme <, >, &, ", ' et tout point de code Unicode en entités nommées (&, <), références décimales (&) ou références hexadécimales (&). Un sélecteur de portée permet de coder seulement les cinq caractères réservés, tous les caractères spéciaux ou chaque caractère non-ASCII. Le décodage inverse l'un des trois formats. Pratique pour assainir les entrées utilisateur ou récupérer du texte issu d'exports d'e-mails HTML.
Comment utiliser
- Étape 1 — Collez du texte contenant des caractères spéciaux ou des entités HTML.
- Étape 2 — Choisissez Encoder pour convertir les caractères en entités, ou Décoder pour convertir les entités en caractères.
- Étape 3 — Choisissez un format (Nommé, Décimal ou Hex) et une portée pour contrôler l'agressivité de l'encodage.
Quand l'utiliser
- Coller des exemples de code dans un CMS sans que < et > soient avalés comme balises.
- Nettoyer du texte issu d'e-mails HTML ou de scraping qui contient encore — et .
- Échapper la saisie utilisateur avant injection dans un gabarit côté serveur pour bloquer le XSS.
Résultat
Vous devez afficher l'extrait de code <div class="hero"> dans un paragraphe HTML. Encodez-le en <div class="hero"> pour que le appareil affiche le texte au lieu de l'interpréter comme du balisage.
FAQ
- Quelle est la différence entre entités nommées et numériques ?
- Les nommées sont des raccourcis lisibles (© pour ©). Les numériques utilisent le point Unicode (© ou ©). Les numériques marchent pour tout Unicode ; les nommées ne couvrent qu'environ 250 caractères définis dans HTML5.
- Faut-il encoder tous les caractères spéciaux ou seulement certains ?
- Dans le corps HTML, vous devez seulement coder & < > et le guillemet utilisé pour les attributs. En contexte JavaScript ou URL, les règles changent. Le sélecteur de Portée propose : Réservés uniquement pour les cinq caractères critiques XSS, Tous les spéciaux pour la typographie en plus des réservés, ou Tout non-ASCII pour la couverture la plus large.
- L'encodage casse-t-il le copier-coller ou les lecteurs d'écran ?
- Non. Le navigateur décode les entités avant l'affichage, l'utilisateur voit et copie le caractère d'origine. Les lecteurs d'écran reçoivent aussi la forme décodée. Les entités sont un format de transport du balisage, pas la sortie finale.
- Encoder les entités HTML suffit-il à arrêter le XSS ?
- Pour du texte dans le corps HTML, oui. Dans les attributs il faut citer la valeur et encoder le guillemet utilisé. JavaScript, CSS et URLs ont leurs propres règles d'échappement. L'encodage est une première couche, pas la défense complète.
- Pourquoi certaines entités commencent par &#x et d'autres par &# ?
- &#x est suivi d'un point hexadécimal, &# d'un point décimal. Les deux désignent le même caractère : © et © affichent ©. L'hexa colle à la notation U+ des tables Unicode et est plus court pour les points hauts.
Outils similaires
Chercheur de rimes
Trouvez des rimes parfaites et approchantes pour n'importe quel mot
Solveur d'Anagrammes
Trouvez tous les anagrammes valides d'un mot
Recherche Unicode
Recherchez des caractères Unicode par nom ou code
Encodeur/Décodeur d'URL
Encodez et décodez des URL instantanément
Alphabet phonétique OTAN
Convertissez du texte en alphabet phonétique OTAN
Compteur de paragraphes
Comptez les paragraphes de votre texte