码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 8.Tornado_RequestHandler功能函数


    1.什么是RequestHandler

    tornado.web.RequestHandler是http请求处理程序的基类,每个RequestHandler类可以定义多个http方法的行为,一般会爸概念相关的功能绑定到同一个类是一个很好的方法。

    2.RequestHandler功能方法

    2.1initialize

    钩子类初始化,每个请求都会调用

    2.2prepare

    在get、post、put之前的请求开始时都会调用,执行通用初始化

    2.3on_finish

    请求结束时调用,用于执行清理,日志记录等

    2.4set_status

    显示地设置状态码,tornado会自动的设置http状态码

    2.5finish

    结束响应,在函数中可以返回内容

    3.请求方法

    1. get
    2. head
    3. post
    4. delete
    5. patch
    6. put
    7. Options

    3.1测试请求方法代码

    from tornado import web
    from tornado import ioloop
    
    class IndexHanler(web.RequestHandler):
        # 初始化函数,一般用于初始化环境变量(连接数据库)
        def initialize(self):
            pass
    
        # 在get、post、put之前的请求开始时都会调用,执行通用初始化
        # 一般用于记录日志,打开文件
        def prepare(self):
            print('prepare')
    
        # 请求结束时调用,用于执行清理,日志记录等
        # 一般用于清理内容
        def on_finish(self):
            print("on_finish")
    
        def get(self):
            print("正在访问请求")
            self.write("get请求访问")
            # self.set_status(404) # 直接返回响应状态码,比如404就直接无法访问
            self.finish({'msg':'get success!!!!'}) # 响应结束时输出:finish之后无法操作其他内容
        
        def post(self):
            print('info from post')
            self.write('POST请求成功!!!')
    
    
    if __name__=='__main__':
        app = web.Application([('/',IndexHanler)],debug=True)
        app.listen(8000)
        ioloop.IOLoop.current().start()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
  • 相关阅读:
    ambari搭建HDP集群后修改存储元数据的mysql数据库配置
    分享一个超好看回忆相册(代码自取)
    JAVA毕业设计html5大众汽车网站计算机源码+lw文档+系统+调试部署+数据库
    【题目推荐2】
    Leetcode2065-最大化一张图中的路径价值
    Pyside6 ProgressBar
    简述 Mock 接口测试
    01 介绍
    开源日报 0825 | 简化开发过程,提升Swift应用性能的扩展工具库
    Ubuntu下Qt creator不能输入中文解决方法
  • 原文地址:https://blog.csdn.net/m0_63953077/article/details/127708738
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号