Si vous tentez de passer certains caractères spéciaux (comme le « + ») dans une URL, vous risquez d’avoir quelques surprises lorsque vous récupérerez la chaîne de caractères côté serveur.
Pour pallier à ce problème, il existe une solution très simple en JavaScript : il s’agit de la fonction encodeURIComponent().
Exemple :
console.log(encodeURIComponent('?x=1+1')); // affichera, dans la console, %3Fx%3D1%2B1
En récupérant, côté serveur, le paramètre « x », on aura bien « 1+1 ». Sans cela, on obtiendrait « 1 1 », ce qui n’est pas le résultat voulu.