Query string
# Query string

Query string o, en español, cadena de consulta es un término informático que se utiliza para hacer referencia a una interacción con una base de datos. Es la parte de una URL que contiene los datos que deben pasar a aplicaciones web como los programas CGI.

En los comienzos de la web las direcciones de las páginas contenían la estructura jerárquica de los directorios del sitio. Por ejemplo:

Estos sitios eran estáticos: a menos que el administrador modifique las páginas siempre mostrarían el mismo contenido a los visitantes.

Más tarde aparecieron los sitios dinámicos. En este caso, el servidor crea automáticamente la página cuando el navegante la solicita. Para ello se vale de una serie de parámetros o datos que se incluyen en la URL. Éstos normalmente están compuestos por un nombre y un valor separados por el signo igual, pudiéndose concatenar un número arbitrario de ellos mediante el signo &. Un ejemplo de dirección dinámica sería:

Otro ejemplo común de dirección dinámica consistiría en configurar el servidor para que asigne automáticamente a un conjunto de variables predefinidas los valores resultantes de la separación de la query string usando como símbolo de separación de la cadena el carácter /.

De esta forma y mediante la configuración del servidor (ej. mod rewrite en servidores web Apache) se podría acceder a las tres subcadenas resultantes en nuestro ejemplo, esto es, paginaprincipal, paginasecundaria y contenido accediendo mediante GET a los sendos nombres de variable que se definieron en la configuración del servidor web. Se trata de una segunda opción simplificada de pares variable-valor, con la peculiraridad de que los nombres de variable se sobreentienden y predefinen en el servidor y el valor se obtiene tras aplicar una separación de la query strings mediante el símbolo /. De esta forma se puede trabajar con Friendly Urls siguiendo las recomendaciones de los principales motores de búsqueda, sin necesidad de crear una estructura de directorios en el servidor. Una gran cantidad de sitios web utilizan esta forma de interpretación de la query string.

