tornado.web.RequestHandler中initialize方法使用详情

日期:2018-07-05 19:50:29 类别:  tornado

每一个Handler实例化之前都会执行initialize方法。

怎么传舒适化参数?

在配置路由时,第三个字典型参数,可以传递初始化参数

(r"/",IndexHandler,dict(name="isoftvip")),

来看一下整个代码:

#coding:utf-8

import tornado.web

from tornado.web import RequestHandler

import tornado.ioloop

import tornado.httpserver

import tornado.options

from tornado.options import options

tornado.options.define("port",type=int,default=8000,help="tornado httpserver port num")


class IndexHandler(tornado.web.RequestHandler):

    def initialize(self,name):

        self.webSite = name

    def get(self, *args, **kwargs):

        print self.webSite


if __name__ == "__main__":

    tornado.options.parse_command_line()

    app=tornado.web.Application(

        [

            (r"/",IndexHandler,dict(name="isoftvip")),

        ],

        debug=True

    )

    http_server=tornado.httpserver.HTTPServer(app)

    http_server.listen(options.port)

    tornado.ioloop.IOLoop.current().start()

请求localhost:8000,即可打印在路由注册时传入的isoftvip.