【发布时间】:2022-01-03 10:48:03
【问题描述】:
如题所问:RequestHandler.on_finish()方法是否保证被调用?即使.post() 方法有一个未处理的异常?
【问题讨论】:
如题所问:RequestHandler.on_finish()方法是否保证被调用?即使.post() 方法有一个未处理的异常?
【问题讨论】:
是的,即使发生未处理的异常,on_finish 也会始终被调用。
Tornado 在try...except 块内运行处理程序方法。因此,当出现未处理的异常时,Tornado 会生成 500 错误响应并调用 finish() 方法关闭请求,然后再调用 on_finish() 方法。
【讨论】: