zoukankan      html  css  js  c++  java
  • tornado-输入

    获取输入的信息:

    *** get_argument get_arguments 兼顾以下两种常用
         能从url中获取     ?name=xiaoming
         能从body中获取      form表单

      get_query_argument # 获取查询字符串(url)
      get_query_arguments
      get_body_argument # 获取body
      get_body_arguments

    url传参
      1.查询字符串风格(?name=xx,age=xx)
      2.REST风格(正则)

        def get(self,name,age): 三个参数,加上name age
          self.write("name:%s<br>age:%s" %(name,age))

        按位置顺序传参
          (r"/user/(.+)/([0-9]+)"                 127.0.0.1/8000/user/ming/18
        按变量名传参      取名 ?P<>
          (r"/user1/(?P<age>[0-9]+)/(?P<name>.+)"    127.0.0.1/8000/user1/18/ming

    import tornado.ioloop
    import tornado.web
    import tornado.httpserver  # 非阻塞
    import tornado.options   # 提供了多种选择 python xxx.py --port=xxxx
    from tornado.options import define,options
    define('port',default=8000,help='run port',type=int)  # windows通过Ctrl+鼠标左键
    define('version',default=0.1,help='version',type=str)
    
    class UserHandler(tornado.web.RequestHandler):
        def get(self,name,age):
            self.write("name:%s<br>age:%s" %(name,age))
    
    
    application = tornado.web.Application(
        handlers=[                      # 列表按顺序匹配
            (r"/user/(.+)/([0-9]+)",UserHandler),
            (r"/user1/(?P<age>[0-9]+)/(?P<name>.+)",UserHandler)  # ?P<>取名
            ],
        template_path='templates',  # 表明页面html的路径
        debug=True           # 上传代码后服务器自动重启
    )
    
    if __name__ == '__main__':
        tornado.options.parse_command_line()   # 通过sys.arg获取命令行输入参数(python xxx.py --port=xxx)
        print(options.port)
        print(options.version)
        http_server = tornado.httpserver.HTTPServer(application)  # 非阻塞
        application.listen(options.port)
        tornado.ioloop.IOLoop.instance().start()   # 启动io循环
  • 相关阅读:
    Java实现 LeetCode 343 整数拆分(动态规划入门经典)
    Java实现 LeetCode 342 4的幂
    Java实现 LeetCode 342 4的幂
    Java实现 LeetCode 342 4的幂
    Java实现 LeetCode 341 扁平化嵌套列表迭代器
    Java实现 LeetCode 341 扁平化嵌套列表迭代器
    Java实现 LeetCode 341 扁平化嵌套列表迭代器
    Java实现 LeetCode 338 比特位计数
    H264(NAL简介与I帧判断)
    分享一段H264视频和AAC音频的RTP封包代码
  • 原文地址:https://www.cnblogs.com/tangpg/p/8488033.html
Copyright © 2011-2022 走看看