tornado 入门

Tornado有在PyPI里面,所以可以通过pip或者easy_install安装。。很方便!

手动下载安装: Download tornado-2.2.1.tar.gz

tar xvzf tornado-2.2.1.tar.gz
cd tornado-2.2.1
python setup.py build
sudo python setup.py install

然后,新建server.py,里面写上:

#!/usr/bin/env python
#! coding: utf-8

import tornado.httpserver
import tornado.ioloop
import tornado.web

class Hello(tornado.web.RequestHandler):
    def get(self):
        self.write("hello world")

app = tornado.web.Application([
    (r"/", Hello),
    (r"/static/(.*)", tornado.web.StaticFileHandler, {"path":"html/static"})
])

if __name__ == '__main__':
    http_server = tornado.httpserver.HTTPServer(app)
    http_server.listen(8888)
    tornado.ioloop.IOLoop.instance().start()

看代码也大概能看出个大概了,Hello类继承tornado.web.RequestHanlder,用来处理请求。

然后建立一个Application类,用一个列表初始化url映射信息。静态文件则通过StaticFileHandler配置。

另外,tornado内置一个很简单的http服务器,具体请看代码。。

然后运行这个文件,就能通过http://localhost:8888/ 访问了,静态文件通过http://localhost:8888/static/访问。

然后就是模板,因为初学,所以就直接用html文件当模板了,这样Hello类就可以改成

class Hello(RequestHandler):
    def get(self):
        self.render("hello.html")

render函数是在哪里找hello.html的呢?

settings = {
        "template_path": "template",
        "static_path": "static",
}
app = tornado.web.Application([
    (r"/", Index),
    (r"/query", Query),
    ], **settings
)

可以通过setting配置template_path路径来指定,如果没有的话,从当前目录~

然后静态文件也可以在setting里面配置,加入“static_path”:”static目录”就行了

参考:

http://www.tornadoweb.org/

tornado的web模块源码

 

转载请注明: 转载自http://jyd.me/

本文链接地址: tornado 入门

Tagged on: ,

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据