1.路由简介

一、路由

服务器上的web服务永久开启,等待客户端访问

先写一个路由表,在tornado中,路由表的定义如下

application = tornado.web.Application([
    (r"/",MainHandler),
])

客户端访问路由器可以看成是客户端获取服务端资源的一个过程。路由表就决定了具体访问什么资源,路由表是访问服务器端口的入口

路由表以列表形式写出来,可以有很多个

import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("你好,素心!!!")

application = tornado.web.Application([
    (r"/main",MainHandler),
])

if __name__ == "__main__":
    application.listen(8000)
    tornado.ioloop.IOLoop.instance().start()

在浏览器里面可以看到

二、Tornado的启动

tornado.ioloop.IOLoop.instance().start()

类似于死循环,使得服务一直处于开启状态

import tornado.ioloop   #I/O事件循环
import tornado.web  #web服务
import tornado.httpserver   #单线程的HTTP服务
import tornado.options
from tornado.options import define,options

define('port',default=8000,help='run port',type=int)

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("你好,素心!!!")

#路由表
application = tornado.web.Application(
    [
        (r"/main",MainHandler)
    ]
)

if __name__ == "__main__":
    tornado.options.parse_command_line()
    http_server = tornado.httpserver.HTTPServer(application)
    http_server.listen(options.port)
    tornado.ioloop.IOLoop.instance().start()

其中,if语句的使用固定模式,一个项目的开始到结束,if部分无需发生任何改变。

tornado.options.parse_command_line()

当代码中有以上模块,在调试代码的时候,可以使用命令改变参数运行:

1. python demo.py --port=8080    #tornado服务将以8080端口启动

2.python demo.py --version 1.0   #以tornado 1.0版启动

3.python demo.py --help

 

posted @ 2018-10-27 23:40  ChanceySolo  阅读(282)  评论(0编辑  收藏  举报