zoukankan      html  css  js  c++  java
  • 初始Tornado第二篇

    Tornado使用命令行来控制启动

    接下来我们对代码做一些更改:

    
    import tornado.httpserver
    import tornado.ioloop      #开启循环,让服务一直等待请求的到来
    import tornado.web           #web服务基本功能都封装在此模块中
    import tornado.options
    from tornado.options import define,options     #从tornado.options中引入define,options 
    
    tornado.options.define('port',default=8080,help='run port',type=int)      #动态改变端口               #python test.py --port=8000   使用命令行来控制启动
    '''
    define('version', default='0.0.1', help='version 0.0.1', type=str)    ## 版本号
    python test.py --port=8000
    python test.py --version=1.0
    python test.py --help
    
    '''
    
    
    class MainHandler(tornado.web.RequestHandler):      #Hander 一个类    在这里指定请求的资源
        def get(self):                 #url都是get请求   处理get请求
            self.write("hi boy")             #往客户端输送
    
    class TestIndexHandler(tornado.web.RequestHandler):
        def get(self):
            # name = self.get_argument("name"," none")           #127.0.0.1:8080/index?name=xps
            # self.write("<b>hello</b>"+name)
            #print(name)
            name = self.get_arguments('name')
            self.write('<b>hello</b> <br><hr>')   #self.wrrite()可以解析前端的标签
            self.write(','.join(name))      ##拼接多个参数 127.0.0.1:8080/index?name=xps?name=ppp
            print(name)    #打印在终端
    
    application = tornado.web.Application(      #路由表是访问服务器的入口
        [
            (r"/index",MainHandler),
            (r"/test",TestIndexHandler),
        ]
    )
    
    if __name__ == "__main__":
        tornado.options.parse_command_line()          #打印出了请求信息
        http_server = tornado.httpserver.HTTPServer(application)
        http_server.listen(options.port)   #动态监听端口
        # application.listen(8080)        #监听端口
        tornado.ioloop.IOLoop.instance().start()       #一直运行
    

    进入虚拟机虚拟环境之后(workon py3env 退出的话是:deactivate)启动服务器,注意,这里可以在命令行可以确定端口 python test2.py -- port=8000运行成功。
    另外还要注意:
    ”’
    get_argements 返回的是list
    get_argement 返回的是str

    对于单一的值,在get和post中调用`self.get_argument(“name”, “default”)`。
    对于多选的值,调用`self.get_arguments(“name”`)即可。
    get_argument方法可以设置默认值,也可以设置是否删除两端的空格
    
    write打印在页面
    print打印在控制台
    
    '''
    
  • 相关阅读:
    mysql5.7慢查询开启配置
    easyui的datagrid删除一条记录后更新出问题
    easyui跨iframe属性datagrid
    struts2笔记12-声明式异常
    struts2笔记11-OGNL
    struts2笔记10-值栈
    linux命令学习03-grep
    struts2笔记09-动态方法调用
    1、GIT简介
    玩转Python语言之4:奇技淫巧
  • 原文地址:https://www.cnblogs.com/shuai06/p/12397532.html
Copyright © 2011-2022 走看看