Python开发Tornado网站之RequestHandler:接入点函数

不言
发布: 2018-10-19 17:12:35
转载
2199 人浏览过
本篇文章给大家带来的内容是关于Python开发Tornado网站之RequestHandler:接入点函数,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

需要子类继承并定义具体行为的函数在RequestHandler中被称为接入点函数(Entry point),上面的Hello World实例中的get()函数就是典型的接入点函数。

1、RequestHandler.initialize()

该方法被子类重写,实现了RequestHandler子类实现的初始化过程。

可以为该函数传递参数(参数来源于配置URL映射的定义)。

实例:
from tornado.web import RequestHandler,Application
import tornado.ioloop
import tornado.web

class ProfileHandler(RequestHandler):
    def initialize(self,database):
        self.database=database

    def get(self):
        return self.write(self.database)

    def post(self):
        pass

def make_app():
    return Application([
    (r"/test",ProfileHandler,dict(database="test.db",))
])

def main():
    app=make_app()
    app.listen(8888)
    tornado.ioloop.IOLoop.current().start()

if __name__=="__main__":
    main()
登录后复制

在浏览器上输入:http://localhost:8888/test

页面显示:

test.db
登录后复制

2、RequestHandler.prepare()、RequestHandler.on_finish()

prepare()方法用于调用请求处理(get、post等)方法之前的初始化处理,通常用来做资源初始化操作。

on_finish()方法用于请求处理结束后的一些清理工作,通常用来清理对象占用的内存或者关闭数据库连接等工作。

3、HTTP Action处理函数

每个HTTP Action在RequestHandler中都以单独的函数进行分开处理:

  • RequestHandler.get(*args,**kwargs)

  • RequestHandler.post(*args,**kwargs)

  • RequestHandler.head(*args,**kwargs)

  • RequestHandler.delete(*args,**kwargs)

  • RequestHandler.patch(*args,**kwargs)

  • RequestHandler.put(*args,**kwargs)

  • RequestHandler.options(*args,**kwargs)

每个处理函数都是HTTP Action的小写名字命名。

以上是Python开发Tornado网站之RequestHandler:接入点函数的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:segmentfault.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板