Wenn eine Funktion mit before_request
Flask erklärt schluckt HTTPExceptions und Pflanzgut sie nicht:Flask Httpexception verschluckt
from flask import Flask
from werkzeug.exceptions import HTTPException
app = Flask(__name__)
@app.before_request
def f():
raise HTTPException("This is not propagated")
@app.route('/')
def test():
return 'This is a view'
if __name__ == '__main__':
app.run()
Die Konsole zeigt keine Ausnahme:
$ python flask_test1.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [02/Jun/2016 15:01:31] "GET/HTTP/1.1" 200 -
Der Browser zeigt:
Unknown Error
This is not propagated
Gibt es eine Möglichkeit, es zu erzwingen? Eine Einstellung, die ich spezifizieren muss, oder sollte ich Werkzeug HTTPExceptions einbinden und benutzerdefinierte Exceptions auslösen?
Sie sehen also * „Dies ist eine Ansicht“ *, wenn Sie zu diesem Endpunkt sehen? Oder erhalten Sie einen HTTP-Fehlercode/einige Fehlerseite (was ist das erwartete Verhalten)? – jonrsharpe
@jonrsharpe bearbeitet – PepperoniPizza
Und warum ist das nicht das Ergebnis, das Sie erwartet haben? Das soll passieren! Siehe http://werkzeug.pocoo.org/docs/0.11/exceptions/ – jonrsharpe