JavaScript: AJAX e i caratteri con significato speciale delle query string

Quando si utilizzano soluzioni in AJAX occorre tenere presente una caratteristica della costruzione delle query string.

Supponiamo di dover pubblicare un post con AJAX. Il contenuto del post viene ricavato da una normale area di testo. Cosa succede quando l'utente inserisce dei caratteri che hanno un significato speciale in una query string, come ad esempio il separatore convenzionale & o l'identificatore di uno spazio + ?

Semplicemente, il linguaggio lato server avrà dei problemi ad identificare le variabili della query string nel primo caso e sostituirà il carattere passato con uno spazio nel secondo. A livello client possiamo utilizzare il metodo globale encodeURIComponent() nel primo caso e sostituire il carattere letterale con un segnaposto nel secondo. Quindi lato server dobbiamo sostituire il segnaposto con il valore letterale prima del salvataggio nel database.