Saltar al contenido

Devuelve la respuesta JSON desde la vista Flask

El tutorial o código que encontrarás en este artículo es la solución más sencilla y válida que hallamos a tus dudas o dilema.

Solución:

EDITAR: a partir de Flask 1.1.0 (como lo menciona Adrien Ball en el comentario a continuación), ahora puede devolver directamente un dictado de Python y Flask lo jsonificará detrás de escena para usted

@app.route('/summary')
def summary():
    d = make_summary()
    return d

si desea devolver un objeto json serializable diferente, puede importar y usar jsonify

from flask import jsonify
...
return jsonify(x)

jsonify serializa los datos que le pasas a JSON. Si desea serializar los datos usted mismo, haga lo que jsonify hace construyendo una respuesta con status=200 y mimetype='application/json'.

from flask import json

@app.route('/summary')
def summary():
    data = make_summary()
    response = app.response_class(
        response=json.dumps(data),
        status=200,
        mimetype='application/json'
    )
    return response

Pasar argumentos de palabra clave a flask.jsonify y se generarán como un objeto JSON.

@app.route('/_get_current_user')
def get_current_user():
    return jsonify(
        username=g.user.username,
        email=g.user.email,
        id=g.user.id
    )

    "username": "admin",
    "email": "[email protected]",
    "id": 42

Si ya tiene un dict, puede pasarlo directamente como jsonify(d).

Acuérdate de que te brindamos la opción de esclarecer si te fue preciso.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

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