356 votes

Que signifient %5B et %5D dans les requêtes POST ?

J'essaie d'écrire une classe Java pour me connecter à un certain site Web. Les données envoyées dans la requête POST pour se connecter sont les suivantes

user%5Blogin%5D=username&user%5Bpassword%5D=123456

Je suis curieux de savoir ce que le %5B et %5D signifie dans la clé connexion de l'utilisateur .

Comment coder ces données ?

618voto

Boris Strandjev Points 18480

Selon cette réponse sur ici : str='foo%20%5B12%5D' encode foo [12] :

%20 is space
%22 is quotes
%5B is '['
and %5D is ']'

C'est ce qu'on appelle codage en pourcentage et est utilisé pour encoder les caractères spéciaux dans les valeurs des paramètres url.

EDIT Au fait, pendant que je lisais https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/encodeURI#Description je me suis demandé pourquoi tant de gens font la même recherche. Voir la note au bas de la page :

Notez également que si l'on souhaite suivre le plus récent RFC3986 pour les URL, rendant les crochets réservés (pour l'IPv6) et donc non encodés lorsqu'ils forment quelque chose qui pourrait faire partie d'une URL (comme un hôte), ce qui suit peut être utile.

function fixedEncodeURI (str) {
    return encodeURI(str).replace(/%5B/g, '[').replace(/%5D/g, ']');
}

J'espère que cela aidera les gens à résoudre leurs problèmes lorsqu'ils se heurtent à cette question.

2 votes

Merci beaucoup pour cela.

0 votes

@TacticalCoder : oui, merci. C'est mon mauvais anglais. Je le corrige tout de suite.

0 votes

Votre lien RFC3986 est cassé

44voto

ruakh Points 68789

Ils représentent [ et ] . Le codage est appelé "Codage de l'URL" .

18voto

Lalit Bhudiya Points 591

[] est remplacé par %5B%5D au moment de l'encodage de l'URL.

12voto

Voo Points 11981

Eh bien, c'est l'habituel encodage de l'url

Ils représentent donc [ respectivement ]

0voto

nettle Points 430

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X