java.net.URLEncoder.encode(some_URL, "UTF-8")
/**
* Return a URL-encoded string version of the argument passed in.
*/
function urlEncode(arg)
{
try {
return java.net.URLEncoder.encode(arg,"UTF-8");
} catch (err) {
// Fall-through
}
// If UTF-8 failed, just use the default encoding.
return java.net.URLEncoder.encode(arg);
}
|
Types de caractères
|
Considérations/Exigences de codage
|
|---|---|
|
Caractères de contrôle ASCII
|
Tous les caractères compris entre 00-1F et 7F doivent être encodés.
|
|
Caractères réservés
|
Les caractères spéciaux suivants sont réservés :
• signe dollar ($) encodé %24
• esperluette (&) encodé %26
• signe plus (+) encodé %2B
• virgule (,) encodé %2C
• barre oblique (/) encodé %2F
• deux-points (:) encodé %3A
• point-virgule (;) encodé %3B
• signe égal (=) encodé %3D
• point d'interrogation (?) encodé %3F
• arobase (@) encodé %40
• étoile (*) encodée %2A
• point d'exclamation (!) encodé %21
|
|
Caractères non sécurisés
|
Certains caractères spéciaux peuvent être incompatibles ou non fiables et entraîner un problème d'interprétation dans les URL. PTC recommande le codage des caractères suivants :
• espace vide ( ) encodé %20 (plus particulièrement les espaces multiples)
• guillemets (“”) encodé %22
• signe inférieur à (\<) encodé %3C
• signe supérieur à (\>) encodé %3E
• signe dièse (#) encodé %23
• pourcentage (%) encodé %25
• accolade ouvrante ({) encodé %7B
• accolade fermante (}) encodé %7D
• barre verticale (|) encodé %7C
• barre oblique inverse (\) encodé %5C
• caret (^) encodé %5E
• tilde (~) encodé %7E
• crochet gauche ([) encodé %5B
• crochet droit (]) encodé %5D
• accent grave (`) encodé %60
|
|
Caractères spéciaux pris en charge
|
Les caractères spéciaux suivants sont autorisés et ne nécessitent pas de codage :
• tiret (-) encodé -
• trait de soulignement (_) encodé _
|
|
Caractères non ASCII
|
Tous les caractères non ASCII doivent être encodés. Ils comprennent la moitié supérieure du jeu de caractères hexadécimal ISO-Latin 80-FF.
|
|
Caractères Unicode
|
Tous les caractères Unicode doivent être encodés. Ils incluent tous les caractères supérieurs à FF.
|