Golang: validar parámetros GET en URL con servidor HTTP

En este post vamos a ver cómo validar y obtener los parámetros GET pasados en la URL cuando estamos leyendo la petición de un servidor HTTP.

Recuerda que con net/http podemos obtener el mapa de parámetros con http.Request.URL.Query, luego cuando accedemos a una clave nos devolverá un arreglo con todos los valores para esa clave GET y finalmente si solo queremos el primero accederemos a la posición 0 de ese arreglo.

Yo te enseñaré cómo pasar de esta validación:

A esta más limpia:

De este modo podremos validar que el parámetro GET se encuentre presente en la petición HTTP además de que no esté vacío, y no importará la cantidad, siempre tendremos las mismas líneas.

Nota: seguramente habrá frameworks o librerías que ya hacen el trabajo. Yo lo haré usando solo la librería estándar y el paquete net/http de Golang.

Función para validar valores GET con Go

Estaba dándole mantenimiento a mi plugin para imprimir PDF silenciosamente desde cualquier lugar y vi que podía simplificar la extracción de parámetros get de la url con la siguiente función:

Si te fijas recibimos una lista de valores que deben estar presentes en la URL. Primero verificamos si existe en la línea 11, si no, lo indicamos y regresamos el error.

Después extraemos el primer valor (tipo string) en la línea 14 y comprobamos que no esté vacío. Si todo va bien entonces agregamos ese valor a la lista de valores ya extraídos en la línea 18 y finalmente devolvemos la lista en la línea 20.

De este modo podemos verificar que se estén enviando los valores necesarios en la URL y ahorramos código comprobando cada valor.

Por aquí te dejo más tutoriales de Golang.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

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