tornado---接口调用顺序

接口调用顺序:

没有错误:

# 接口调用顺序(没有错误)
class BBB(tornado.web.RequestHandler):
    # 参数初始化处理
    def initialize(self):
        print("我是initialize")

    # 预处理,反爬虫。。。
    def prepare(self):
        print("我是prepare")

    # 请求
    def get(self, *args, **kwargs):
        print("我是get")
        self.write("我是get")

    # 设置请求头信息
    def set_default_headers(self):
        print("我是set_default_headers")

    # 返回错误信息
    def write_error(self, status_code, **kwargs):
        print("我是write_error")

    # 请求之后执行,返回日志。。。
    def on_finish(self):
        print("我是on_finish")

打印的结果:

我是set_default_headers
我是initialize
我是prepare
我是get
我是on_finish

有错误:

# 接口调用顺序(有错误)
class CCC(tornado.web.RequestHandler):
    # 参数初始化处理
    def initialize(self):
        print("我是initialize")

    # 预处理,反爬虫。。。
    def prepare(self):
        print("我是prepare")

    # 请求
    def get(self, *args, **kwargs):
        print("我是get")
        self.send_error(500)
        self.write("我是get")

    # 设置请求头信息
    def set_default_headers(self):
        print("我是set_default_headers")

    # 返回错误信息
    def write_error(self, status_code, **kwargs):
        print("我是write_error")
        self.write("500错误")

    # 请求之后执行,返回日志。。。
    def on_finish(self):
        print("我是on_finish")

打印的结果:

我是set_default_headers
我是initialize
我是prepare
我是get
我是set_default_headers
我是write_error
我是on_finish

总结:

tornado---接口调用顺序