您的位置:首页 > 其它

(二)Web框架-龙卷风Tornado之世界上最简单的Tornado示例

2017-08-19 21:33 375 查看

源码

# _*_coding:utf-8_*_
import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("Hello Tornado")

def make_app():
return tornado.web.Application(handlers=[
(r"/", MainHandler),
])

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


源码详解

# _*_coding:utf-8_*_

#导入异步IO网络库,它是核心的IO循环
import tornado.ioloop

#如下所导入的模块是FriendFeed 使用的基础 Web 框架,包含了 Tornado 的大多数重
#要的功能
import tornado.web

#编写一个Tornado应用中最多的工作是定义类继承Tornado的#RequestHandler类,该类
#有一系列有用的内建方法,比如如下的write方法,
#它以一个字符串作为函数的参数,并将其写入到HTTP响应中
class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("Hello Tornado")
#然后创建了一个Tornado的Application类的实例。传递给Application类__init__方
#法的最重要的参数是handlers。它告诉Tornado应该用哪个类来响应请求。当然也可以直
#接写成[(r"/", MainHandler),]略去左值handlers
def make_app():
return tornado.web.Application(handlers=[
(r"/", MainHandler),
])

if __name__ == "__main__":
#调用函数make_app,此时也实例化了web模块的Application类,将实例赋给app
app = make_app()
#调用实例的listen方法,并传入int值8888作为监听端口,而实际上是将其传
#递给Tornado的httpserver模块(服务于 web 模块的一个非常简单的 HTTP 服务器的
#实现)的HTTPServer对象,最后,在程序准备好接收HTTP请求后,我们创建一个
#Tornado的IOLoop的实例。
#Application类的#listen方法源码如下:
#
#def listen(self, port, address="", **kwargs):
#    from tornado.httpserver import HTTPServer
#        server = HTTPServer(self, **kwargs)
#        server.listen(port, address)
#        return server
#
app.listen(8888)
#启动事件循环
tornado.ioloop.IOLoop.current().start()


访问

http://127.0.0.1:8888/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息