Greifen Sie in einem Bottlepy-after_request-Hook auf das Antwortobjekt zu
Ich habe die folgende Web-App:
import bottle
app = bottle.Bottle()
@app.route('/ping')
def ping():
print 'pong'
return 'pong'
@app.hook('after_request')
def after():
print 'foo'
print bottle.response.body
if __name__ == "__main__":
app.run(host='0.0.0.0', port='9999', server='cherrypy')
Gibt es eine Möglichkeit, auf den Antworttext zuzugreifen, bevor die Antwort zurückgesendet wird?
Wenn ich die App starte und frage/ping
Ich kann in der Konsole sehen, dass dieping()
und dasafter()
Funktion in der richtigen Reihenfolge ausführen
$ python bottle_after_request.py
Bottle v0.11.6 server starting up (using CherryPyServer())...
Listening on http://0.0.0.0:9999/
Hit Ctrl-C to quit.
pong
foo
aber wenn inafter()
Ich versuche zuzugreifenresponse.body
Ich habe nichts.
In Flask übernehmen die mit after_request dekorierten Funktionen die Eingabe des Antwortobjekts, so dass ein einfacher Zugriff darauf möglich ist. Wie kann ich das auch in der Flasche machen?
Fehlt mir etwas?