Ir al contenido

Cabeceras en Flask

Cuando respondemos un contenido desde un servidor a un cliente, uno de los contenidos que va en la respuesta (o response) son las cabeceras. Las cabeceras suelen llevar información sobre el contenido de la petición o sobre el servidor que está sirviendo la petición.

En este artículo vamos a ver cómo podemos manejar las cabeceras en Flask para una petición.

Lo primero que tenemos que saber para poder manejar las cabeceras en Flask es cómo son las respuestas que devolvemos al cliente.

Lo más utilizado puede ser:

  • Ver una plantilla como respuesta mediante el método render_template()
  • Devolver un texto, ya sea plano, XML o JSON

En todos los casos lo que se devuelve es un objeto response.

Si queremos crear un objeto response vacío podemos utilizar el método make_response(). Así podemos crear el siguiente objeto response con texto:

response = make_response("Texto de la respuesta")

Lo bueno es que dentro del objeto response existe una colección llamada headers en la que van las cabeceras de la respuesta.

De esta forma, si queremos modificar las cabeceras en Flask y añadir una cabecera personalizada, podremos escribir:

response.headers['X-Mi-Cabecera'] = 'Valor personalizado'

O podemos sobrescribir alguna de las cabeceras que se devuelve. Por ejemplo, podemos “tunear” la cabecera del servidor de la siguiente forma:

response.headers['Server'] = 'Mi Servidor Personalizado'

Ya solo nos quedará devolver el objeto response como resultado del método:

return response
from flask import Flask, make_response
app = Flask(__name__)
@app.route('/')
def index():
response = make_response("Hola con cabeceras personalizadas")
response.headers['X-Mi-Cabecera'] = 'Valor personalizado'
response.headers['Server'] = 'Mi Servidor Personalizado'
return response
if __name__ == '__main__':
[app.run](http://app.run/)()

Ya hemos visto lo sencillo que es manejar las cabeceras en Flask.

Foto de Víctor Cuervo

Víctor Cuervo

Programador, Arquitecto IT, álter ego de Línea de Código, amante de las tecnologías, generador de conocimiento y facilitador del aprendizaje.

Descarga el código de Cabeceras en Flask

Ejemplo que nos enseña a crear un objeto response por partes para poder modificar las cabeceras en Flask y devolverlas personalizadas.

Descargar código