小白学习tornado第二站-tornado简单介绍

tornado基本web应用结构

分为两大块类

Application对象(只会实例化一次)

  路由表URl映射  (r'/', MainHandler)

  关键词参数settings

RequestHandler子类

  主入口点: 处理HTTP方法

  产生相应

    render或者write

    错误处理或者重定向等

  可供复写的方法

    每个请求的调用序列

    常用的复写方法

结合hello.py函数

from datetime import datetime

import tornado.ioloop
import tornado.web


class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("Hello, world")
# self.write_error(500) # 输出错误响应
# self.set_status(500) # 设置错误响应

def prepare(self): # 先被执行
print('prepare' + str(datetime.now()))
self.write('in prepare')


class IndexHandler(tornado.web.RequestHandler):
def get(self):
self.redirect(r'/') # 重定向


class PictureHandler(tornado.web.RequestHandler):
def get(self):
self.write('<img height="160" width="230" src="https://tse2-mm.cn.bing.net/th?id=OIP.VvmsvFfpntCllfa7uQbfrQHaEK&amp;w=230&amp;h=160&amp;c=7&amp;o=5&amp;pid=1.7">')


def make_app():
return tornado.web.Application([
(r"/", MainHandler), # 路由表映射
(r"/index/", IndexHandler),
(r'/pic/', PictureHandler),
],
debug=True, # setting关键字
)


if __name__ == "__main__":
app = make_app()
app.listen(8000)
tornado.ioloop.IOLoop.current().start()

猜你喜欢

转载自www.cnblogs.com/xnnx/p/11295648.html