request.args.get()En Flask, al crear rutas que necesitan recibir información desde la URL (como ?parametro=valor), podemos acceder a esos datos usando el método request.args.get().
Este método es sencillo y seguro, ideal para extraer parámetros sin complicaciones.
request.args.get() es un método en Flask que se utiliza para acceder a los parámetros de la consulta (query parameters) enviados en una solicitud HTTP GET
request.args.get()?Flask proporciona request.args, un diccionario que contiene todos los parámetros de la URL. Usando .get(), podemos acceder al valor de un parámetro específico. La sintaxis es:
request.args.get('nombre_del_parametro', valor_predeterminado)
nombre_del_parametro: nombre del parámetro en la URL.
valor_predeterminado (opcional): valor que devolverá si el parámetro no está en la URL. Imaginemos una aplicación en Flask donde queremos capturar el parámetro usuario de la URL y saludarlo.
Para esto, definimos una ruta que capture ese parámetro y lo despliegue en pantalla.
from flask import Flask, request
app = Flask(__name__)
@app.route('/saludo')
def saludo():
usuario = request.args.get('usuario', 'Visitante')
# Salida: 'Visitante' será el valor por defecto si no se pasa el parámetro
return f'Hola, {usuario}!' request.args.get('usuario', 'Visitante') obtenemos el valor de usuario.
Si no está en la URL, usará “Visitante” como valor por defecto.return, mostramos un mensaje personalizado en función de si se envió o no el parámetro.Llamando a http://127.0.0.1:5000/saludo?usuario=Brenda, el navegador mostrará:
Hola, Brenda! Si solo visitamos http://127.0.0.1:5000/saludo (sin parámetros), veremos:
Hola, Visitante! request.args.get()El método request.args.get() solo obtiene un parámetro específico.
Si necesitas varios parámetros, solo usa varias llamadas.
http://127.0.0.1:8000/info?nombre=Urian&profesion=Ingeniero&edad=35 La URL está compuesta por la ruta /info seguida de los parámetros después del signo ?:
nombre=Urianprofesion=Ingenieroedad=35Cada parámetro es un par clave-valor, donde nombre es la clave y Urian el valor, y así sucesivamente.
Vamos a crear una ruta /info en Flask que obtenga estos tres parámetros:
from flask import Flask, request
app = Flask(__name__)
@app.route('/info')
def info():
# Accedemos a cada parámetro de la URL usando request.args.get()
nombre = request.args.get('nombre', 'Desconocido')
profesion = request.args.get('profesion', 'Sin especificar')
edad = request.args.get('edad', 'N/A')
# Devolvemos una respuesta con los valores capturados
return f'Nombre: {nombre}, Profesión: {profesion}, Edad: {edad}'
# Corriendo la app
if __name__ == '__main__':
app.run(debug=True, port=5000) Acceso a los Parámetros: Usamos request.args.get('nombre', 'Desconocido'), request.args.get('profesion', 'Sin especificar'), y request.args.get('edad', 'N/A') para obtener cada parámetro individualmente. Cada llamada:
Respuesta: Mostramos los valores recibidos en la respuesta.
Si visitamos la URL http://127.0.0.1:8000/info?nombre=Urian&profesion=Ingeniero&edad=35, la salida será:
Nombre: Urian, Profesión: Ingeniero, Edad: 35 Si no incluyes algún parámetro, el valor predeterminado se usará en su lugar. Por ejemplo, en la URL http://127.0.0.1:8000/info?nombre=Urian&profesion=Ingeniero (sin edad), el resultado será:
Nombre: Urian, Profesión: Ingeniero, Edad: N/A request.args.get() permite obtener valores individuales de la URL.
Cuando necesitas múltiples parámetros, simplemente realiza varias llamadas a request.args.get() con el nombre de cada parámetro.
Esto hace que sea fácil y flexible construir rutas dinámicas en Flask que respondan a la información que los usuarios envían en la URL.