我希望能够处理输入错误 URL 时显示的更好的错误E.g. localhost:8000/AFDADSFDKFADS
我收到一条丑陋的 python 回溯消息,因为抛出了一个ornado.web.HTTPError 异常。我知道我可以使用正则表达式来捕获除正确 URL 之外的所有场景,但我认为必须有一种方法可以在 Tornado 中处理此错误。
我知道我可以使用write_error()
当延长tornado.web.RequestHandler
但因为这个错误发生在tornado.web.Application
类我不知道如何处理。
我觉得可能和班级有关系tornado.web.ErrorHandler(application, request, **kwargs)
但我不确定。
也有人可以告诉我我是否在tornado.web.RequestHandler
方法并执行raise KeyError
或其他异常而没有捕获它为什么write_error()
没有被调用?看来异常被忽略了。
要提供自定义 404 页面,请创建一个调用的处理程序self.set_status(404)
(除了产生你想要的任何输出)并将其设置为default_handler_class
in the Application
构造函数关键字参数。
class My404Handler(RequestHandler):
# Override prepare() instead of get() to cover all possible HTTP methods.
def prepare(self):
self.set_status(404)
self.render("404.html")
app = Application(..., default_handler_class=My404Handler)
你可能不想使用ErrorHandler
:这是返回指定状态代码的简单方法,但它不能让您控制输出。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)