博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
tornado基础入门(一)——简单了解tornado
阅读量:5149 次
发布时间:2019-06-13

本文共 2144 字,大约阅读时间需要 7 分钟。

参考:

 

tornado是一个轻量级的web框架,是一个用python写的web服务器,它有三个最大的特点(优势)速度、简单和可扩展性。

 

编写tornado应用做多最多的工作就是定义一个类去继承tornado中的RequestHandler类。

 

来看一个例子:

# hello.py

1 import tornado.httpserver 2 import tornado.ioloop 3 import tornado.options 4 import tornado.web 5  6 from tornado.options import define, options 7 define("port", default=8000, help="run on the given port", type=int) 8  9 class IndexHandler(tornado.web.RequestHandler):10     def get(self):11         greeting = self.get_argument('greeting', 'Hello')12         self.write(greeting + ', friendly user!')13 14 if __name__ == "__main__":15     tornado.options.parse_command_line()16     app = tornado.web.Application(handlers=[(r"/", IndexHandler)])17     http_server = tornado.httpserver.HTTPServer(app)18     http_server.listen(options.port)19     tornado.ioloop.IOLoop.instance().start()

 

这个例子编写了一个非常简单的应用。

我们可以在命令行中启动它:

python hello.py --port=8000

然后再从浏览器中打开这个应用,输入网址:

http://localhost:8000/

可以看到网页上显示:

Hello, friendly user!

 

" 我们在命令行输入的  ’prot' 的参数是通过第七行中的define传递的,define是tornado.options模块中的一个函数,这个模块用来读取命令行中的一些设置。例如我们在命令行中设置了它的端口prot=8888,define就匹配出它所设置的同名变量 ‘prot’ ,将它从默认值改为 ‘8888’(默认值为8000),这时我们则需要从这个网址进入“http://localhost:8888/" "

 

这显示的是我们代码第12行 ’write‘进的内容。

我们可以定制一下这个内容,可以看到 ’write' 的有个自定义的变量 ‘greeting' ,而这个变量的默认值为 'Hello’ , 它是通过tornado中的内建函数 ‘ get_argument ‘ 来传递给 ’write‘ ,

所以我们来改变这个变量,从哪入手呢? 从网址入手!

http://localhost:8000/?greeting=Hi

在 ‘?’后给变量重新赋值,这时可以发现网页上的内容变为:

Hi, friendly user!

 

来梳理以下这段代码的工作流程:

14 if __name__ == "__main__":15     tornado.options.parse_command_line()16     app = tornado.web.Application(handlers=[(r"/", IndexHandler)])17     http_server = tornado.httpserver.HTTPServer(app)18     http_server.listen(options.port)19     tornado.ioloop.IOLoop.instance().start()

 

  1. 我们的应用真正运行起来的时 ‘15、16 ’两行,通过tornado.options模块解析命令行参数,再创建了一个tornado的Application类的实例,最重要的参数时 ‘handler’ 它来告诉tornado应该用哪个类来响应请求。

  2. 后面开始,这段代码将会被反复使用,Application对象被创建,我们将其传递给tornado中的HTTPServer对象,然后使用我的命令行指定端口监听(通过options模块取出)。

  3. 最后,程序准备好接受http请求后,我们创建一个tornado的IOLoop的实例。

 

                                                                2016-11-17   15:51:49

参考:

转载于:https://www.cnblogs.com/ymjr/p/6074119.html

你可能感兴趣的文章
Sharepoint 2013搜索服务配置总结(实战)
查看>>
10 个用来下载免费图标的网站
查看>>
noi.ac 第五场第六场
查看>>
01背包
查看>>
Openscada远程配置
查看>>
博客盈利请先考虑这七点
查看>>
使用 XMLBeans 进行编程
查看>>
XML 解析---dom解析和sax解析
查看>>
Gamescom2014:中国游戏公司37.com进军西方海外市场
查看>>
编程异常——假设你报createSQLQuery is not valid without active transaction,...
查看>>
ios新开发语言swift 新手教程
查看>>
有引用外部jar包时(J2SE)生成jar文件
查看>>
写接口请求类型为get或post的时,参数定义的几种方式,如何用注解(原创)--雷锋...
查看>>
什么是 开发环境、测试环境、生产环境、UAT环境、仿真环境
查看>>
科研需要兴趣和自信
查看>>
iOS Development
查看>>
mysql
查看>>
1分钟搞定Android开发智能提示问题xml文件一并搞定
查看>>
4分钟学会网页样式
查看>>
Java核心技术点之注解
查看>>