Basierend auf etwas googeln habe ich den folgenden Fehlerhandler installiert. Die Python-Exceptions, die einen http-Wert von 500 zurückgeben, werden jedoch nicht von diesem Code gefangen, obwohl es sich um 404 handelt. Mit den Druckanweisungen, die ich in dem Code unten gelassen habe, kann ich sehen, dass es keine dieser Routinen trifft. Was sollte ich wirklich tun?
%Vor% Zunächst einmal hat die Ausnahme, die Sie in prepare
erhöhen, den Code 200
, daher wird sie nicht in der Funktion get_error_html
abgefangen.
Zweitens ist get_error_html
veraltet: Verwenden Sie stattdessen write_error
( write_error ).
Schließlich müssen Sie nicht __init__
auf ErrorHandler
aufrufen: Um einen Handler zu initialisieren, verwenden Sie initialize
( initialisieren ), aber in diesem Fall brauchen Sie es nicht.
Hier ist ein Arbeitsbeispiel:
%Vor%default_handler_class
und default_handler_args
definieren als Ergebnis. Alle Fehler außer 404 werden von BaseHandler behandelt. 404 - ErrorHandler. das ist es:)
Tags und Links tornado