欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python Tornado框架輕松寫(xiě)一個(gè)Web應(yīng)用的全過(guò)程

 更新時(shí)間:2021年08月11日 15:22:02   作者:雷學(xué)委  
Tornado全稱Tornado Web Server,是一個(gè)用Python語(yǔ)言寫(xiě)成的Web服務(wù)器兼Web應(yīng)用框架,Tornado走的是少而精的方向,注重的是性能優(yōu)越,它最出名的是異步非阻塞的服務(wù)器方式,這篇文章主要給大家介紹了關(guān)于Python Tornado框架輕松寫(xiě)一個(gè)Web應(yīng)用的相關(guān)資料,需要的朋友可以參考下

Tornado是什么

學(xué)委之前在看Jupyter組件的源碼的時(shí)候,發(fā)現(xiàn)了tornado這個(gè)web框架。

不僅僅做一個(gè)web框架, 通過(guò)使用非阻塞網(wǎng)絡(luò)I/O,Tornado可以擴(kuò)展到數(shù)萬(wàn)個(gè)開(kāi)放連接。

這樣非常適合 long polling , WebSockets 以及其他需要與每個(gè)用戶建立長(zhǎng)期連接的應(yīng)用程序。

好,下面安裝試用一下。

安裝

pip install tornado

pip 不會(huì)用的朋友可以看看 # 秒懂精通pip并快速體驗(yàn)深度學(xué)習(xí)應(yīng)用吧!【多圖建議收藏】

試試看使用tornado框架來(lái)寫(xiě)一個(gè)web application

來(lái)一個(gè)簡(jiǎn)單的,保存下面代碼為app.py文件

"""
雷學(xué)委#代碼Demo
"""

import tornado.ioloop
import tornado.web

“”“編寫(xiě)一個(gè)請(qǐng)求處理器”“”
class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("Hello, Tornado Server");


"""創(chuàng)建一個(gè)web app"""
def make_app():
    #綁定接口“/” 到MainHandler
    return tornado.web.Application([
	    (r"/", MainHandler),	
    ])


#程序入口
if __name__ == '__main__':
    app = make_app()
    app.listen(8080)
    tornado.ioloop.IOLoop.current().start()

運(yùn)行如下:(python app.py)

效果如下:

這個(gè)示例很簡(jiǎn)單,先學(xué)會(huì)用起來(lái)。

再試試做一個(gè)form

"""
雷學(xué)委#代碼Demo
"""

import tornado.ioloop
import tornado.web

#一個(gè)處理form的請(qǐng)求處理器
class MyFormHandler(tornado.web.RequestHandler):
    def get(self):
        #直接頁(yè)面渲染一個(gè)form
        self.write('<html><body class="leiXueWei"><form action="/form" method="POST">'
                   '<input type="text" name="message">'
                   '<input class="leiXueWei" type="submit" value="Submit">'
                   '</form></body></html>')

    def post(self):
        self.set_header("Content-Type", "text/plain")
        self.write("You wrote " + self.get_body_argument("message"))


class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("Hello, Tornado Server");

def make_xue_wei_app():
    #使用application加載多個(gè)路由: “/” 接口路由 和 “/form” 接口路由
    return tornado.web.Application([
	    (r"/", MainHandler),
        (r"/form", MyFormHandler)
    ])


if __name__ == '__main__':
    app = make_xue_wei_app()
    app.listen(18081)
    tornado.ioloop.IOLoop.current().start()

以上代碼比前面第一個(gè)示例多了一個(gè)form的請(qǐng)求處理器和路由加載。

看看頁(yè)面渲染的效果,沒(méi)有內(nèi)嵌任何js,這個(gè)submit按鈕就直接把發(fā)起了POST請(qǐng)求給“/form”接口。

而且博主也沒(méi)有編寫(xiě)任何JS處理頁(yè)面,特別簡(jiǎn)化,這個(gè)”小魔法“是本文想要推薦tornado的一個(gè)原因!

以上隨筆,簡(jiǎn)單使用分享,后面再繼續(xù)推這個(gè)框架的解讀。

總結(jié)

到此這篇關(guān)于Python Tornado框架輕松寫(xiě)一個(gè)Web應(yīng)用的文章就介紹到這了,更多相關(guān)Python Tornado框架寫(xiě)Web應(yīng)用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

參考鏈接:

關(guān)于Pip的使用 => http://www.dbjr.com.cn/article/219385.htm

Tornado => www.osgeo.cn/tornado/

相關(guān)文章

最新評(píng)論