Query string
In informatica una query-string o stringa di ricerca è la parte di un URL che contiene dei dati da passare in input ad un programma.
L'URL conterrà l'indirizzo di un server, e il percorso nel suo file system per arrivare alla directory nella quale è presente l'eseguibile del programma. Al termine di tale indirizzo, il segno di "?" apre la query-string. Propriamente, la query-string non comprende il segno di "?", ma è tutto ciò che lo segue.
Descrizione
modifica- Lunghezza - Il protocollo HTTP non prevede limiti di lunghezza. Alcuni browser come Internet Explorer limitano tale lunghezza a poco più di 2000 caratteri mentre Firefox, Opera ed altri, non sembrano soffrire questa limitazione.
- Caratteri "riservati" - i simboli: "$" "&" "+" "," "/" ":" ";" "=" "?" "@" hanno funzioni specifiche all'interno dell'URL quindi, per evitare possibili conflitti devono obbligatoriamente essere codificati prima della trasmissione.
- Caratteri "non sicuri" - i simboli: " " (spazio) """ (doppi apici) "<" ">" "#" "%" per evitare ambiguità, è consigliabile codificarli.
- Codifica URLencode - Ciascun carattere da codificare, viene sostituito da una tripletta composta dal simbolo "%" seguito da 2 caratteri che rappresentano il corrispondente valore esadecimale. Ad esempio: %20 rappresenta uno spazio, %21 rappresenta il simbolo "!" e così via.[1] Lo spazio può anche essere rappresentato con il simbolo "+", una notazione abbreviata utilizzata per rendere le query-string interpretabili anche da quei sistemi che non supportano gli spazi.
Sintassi
modificaLa sintassi della querystring non è formalmente definita, si può tuttavia definire standard (perché implementata in tutti i browser e nei linguaggi di scripting) il seguente schema:
parametro1=valore1¶metro2=valore2¶metro3=valore3
A ciascun parametro (che può avere nome arbitrario) viene assegnato un valore utilizzando il separatore "=".
I vari parametri (limitati nel numero solo dalla lunghezza della querystring) sono intervallati dal simbolo "&" .
Usi
modificaLa query-string è tipicamente usata per passare al server i dati che l'utente inserisce nei vari spazi bianchi di una web form. Se campo_1, campo_2, campo_3 sono gli spazi della web form da colmare, l'URL generata salvando la form sarà del tipo:
http://server/percorso/programma?campo_1=valore_1&campo_2=valore_2&campo_3=valore_3
.
Esempio:
http://it.wikipedia.org/application/new_user/registration_form?nome=Mario&cognome=Rossi&ID_utente=M_Rossi
.
La query string viene generata dal browser ed inviata ad un programma (di solito scritto in JavaServer Pages, PHP, Asp o Perl) che abita sul server.