Maison > interface Web > js tutoriel > encodeURI(), encodeURIComponent() ou escape() : quand utiliser lequel pour le codage d'URL ?

encodeURI(), encodeURIComponent() ou escape() : quand utiliser lequel pour le codage d'URL ?

Patricia Arquette
Libérer: 2024-12-13 22:57:11
original
618 Les gens l'ont consulté

encodeURI(), encodeURIComponent(), or escape(): When to Use Which for URL Encoding?

Quand utiliser escape, encodeURI ou encodeURIComponent

Encodage des chaînes de requête

Lors de l'encodage une chaîne de requête à transmettre à un serveur web, différentes fonctions ont des spécificités fins :

escape()

  • Bien qu'il soit défini dans la norme ECMAScript, escape() est obsolète et ne doit pas être utilisé. Il présente des caractéristiques indésirables qui sont obsolètes dans le développement Web moderne.

encodeURI()

  • Utilisez encodeURI() pour encoder un Chaîne d'URL. Cela code les caractères spéciaux, tels que les espaces, pour garantir une structure d'URL valide. Par exemple :

    encodeURI("http://www.google.com?var1=value1&var2=value2");
    Copier après la connexion

    renverra :

    http://www.google.com?var1=value1&var2=value2
    Copier après la connexion

encodeURIComponent()

  • Utilisez encodeURIComponent() pour encoder des paramètres spécifiques dans une chaîne URL. Cela garantit que les caractères spécifiques, tels que les espaces, sont correctement codés dans les valeurs des paramètres. Par exemple :

    encodeURIComponent("var1=value1&var2=value2");
    Copier après la connexion

    renverra :

    var1%3Dvalue1%26var2%3Dvalue2
    Copier après la connexion

Consignes d'utilisation

  • Pour l'encodage terminé Pour les URL, utilisez encodeURI().
  • Pour encoder des paramètres spécifiques dans les URL, utilisez encodeURIComponent().
  • Évitez d'utiliser escape() à quelque fin que ce soit.
  • N'oubliez pas qu'encodeURI() et encodeURIComponent() n'échappent pas au guillemet simple ('). Pour vous protéger contre les vulnérabilités d'injection lors de la construction d'attributs HTML avec des guillemets simples, envisagez plutôt d'utiliser des guillemets doubles (") ou de coder le guillemet simple comme '.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal