Por defecto, JavaScript no posee funciones automáticas para recibir variables GET mediante la URL (y tampoco es un sistema “seguro” – ya saben, Javascript es un lenguaje muy bueno, pero nunca hay que fiarse de el), y por eso, esta función que les dejo acá servirá para recibirlaslas de manera que podamos trabajar con ellas (pero recuerden no confiarse de Javascript para tareas importantes).

La función para leer variables GET

Para recibir variables mediante JavaScript, sería necesario utilizar una función como la siguiente, la cual debería ir al principio de la página (dentro de la etiqueta HEAD), en un archivo de funciones (externo), o al final del HTML donde se quiera utilizar:

<script type="text/javascript">
query=window.location.search.substring(1);
q=query.split("&");
vars=[];
for(i=0;i<q.length;i++){
    x=q[i].split("=");
    k=x[0];
    v=x[1];
    vars[k]=v;
}
</script>

De esta manera, todas las variables quedarían almacenadas en un array asociativo, del cual podríamos obtener todos los datos en cualquier minuto.

Un ejemplo

Suponiendo que en la URL recibimos una estructura como la siguiente:

https://www.preceptosdigitales.com/?animal=perro&nombre=bobby

para poder llamar a una variable, solamente habría que llamarla así:

vars['animal']
vars['nombre']

Seguridad

Está claro que el tema de la seguridad es muy importante en una página web, por lo tanto siempre hay que tener cuidado cuando se utiliza JavaScript. Yo recomiendo que JavaScript se utilice únicamente cuando no se comprometa información importante, que debe ser resguardada y validada.

Por ejemplo, si el registro en un sitio depende de un Javascript que recibe algún dato importante, no se puede permitir recibir y volver a enviar el mismo dato sin validarlo, pues en el camino puede ser modificada la URL y toda la “seguridad” del sitio se vería comprometida. En ese caso, se debería utilizar lenguajes de programación que se ejecuten en el servidor, y no en el cliente, como PHP, ASP, Java, etc.

Cuéntame si usas esta función y como te va

Acerca del autor
Sebastián Barría Garcés Me dedico al desarrollo Web y programación hace más de 10 años, enfocándome en temas como HTML, CSS, Javascript, MySQL, PHP, Actionscript y manejo de servidores.

Originally posted 2016-04-22 20:52:50.

Recibir variables GET con Javascript
Etiquetado en:        

3 thoughts on “Recibir variables GET con Javascript

  • 29/09/2016 a las 13:23
    Enlace permanente

    Tienes toda la razón en el sentido de seguridad, si alguien descubre que estás utilizando esa variable para manipular con JS, quizás encuentre alguna forma de entrar en otros lados. Y eso sería peligroso si no esta validada la inserción/update en el servidor. Aunque en general en un sentido puramente de lectura de información es seguro.

    Yo mismo lo he hecho jajaja. A veces no hay problema y es bastante útil. No se si sea un patrón o antipatrón… :O

    Responder
  • 22/12/2016 a las 01:17
    Enlace permanente

    Genial, simple y limpio.
    Muchas gracias es lo que andaba buscando!
    Higinio

    Responder

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

¿Quieres recibir el contenido V.I.P de Preceptos Digitales?

¿Quieres recibir el contenido V.I.P de Preceptos Digitales?

Ingresa tu correo y te enviaremos contenidos especiales para quienes escuchan el Podcast!



Te has suscrito exitosamente! Nos hablamos!