2012-08-08 14 views
6

voglio usare pallone per tornare JSON al brower con o senza simplejson (con intestazioni appropriate) ecco quello che ho finora per la mia applicazione pallone: ​​Come restituire JSON in python di una maschera recuperato da un altro URL al browser?

@app.route('/') 
def hello_world(): 
    QUERY_URL="http://someappserver:9902/myjsonservlet" 
    result = simplejson.load(urllib.urlopen(QUERY_URL)) 
    return result; 

Supponendo che l'uscita JSON restituito è:

{"myapplication":{"system_memory":21026160640.0,"percent_memory":0.34, 
"total_queue_memory":4744,"consumers":1,"messages_unacknowledged":0, 
"total_messages":0,"connections":1} 

Quando visito la pagina http://localhost:5000 tuttavia, ottengo un Internal Server Error. Cosa devo fare con "risultato" per farlo visualizzare in modo appropriato? O c'è un modo in cui posso dire di tornare con le intestazioni json?

Quando aggiungo una dichiarazione di stampa per stampare il risultato, posso vedere il JSON, ma nel browser mi dà un Internal Server Error.

risposta

10
import requests 
r = requests.get(QUERY_URL) 
return r.json 

#normal return 
return jsonify(username=g.user.username, 
       email=g.user.email, 
       id=g.user.id) 

jsonify è disponibile nel pallone. Ecco lo docs

Problemi correlati