真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么簡單分析Flask框架

本篇文章給大家分享的是有關(guān)怎么簡單分析Flask框架,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

創(chuàng)新互聯(lián)企業(yè)建站,10余年網(wǎng)站建設(shè)經(jīng)驗,專注于網(wǎng)站建設(shè)技術(shù),精于網(wǎng)頁設(shè)計,有多年建站和網(wǎng)站代運營經(jīng)驗,設(shè)計師為客戶打造網(wǎng)絡(luò)企業(yè)風(fēng)格,提供周到的建站售前咨詢和貼心的售后服務(wù)。對于成都網(wǎng)站設(shè)計、網(wǎng)站制作、外貿(mào)營銷網(wǎng)站建設(shè)中不同領(lǐng)域進(jìn)行深入了解和探索,創(chuàng)新互聯(lián)在網(wǎng)站建設(shè)中充分了解客戶行業(yè)的需求,以靈動的思維在網(wǎng)頁中充分展現(xiàn),通過對客戶行業(yè)精準(zhǔn)市場調(diào)研,為客戶提供的解決方案。

我們知道,Web框架通過將不同Web應(yīng)用程序中的共性部分給抽象出來,提供一系列通用的接口,從而避免開發(fā)者做重復(fù)性工作,讓其將精力放在業(yè)務(wù)相關(guān)的實現(xiàn)。

接下來一起來看一個具體的 Web 框架,這里選擇 Flask,因為它是一個年輕充滿活力的微框架,有著眾多的擁護(hù)者,文檔齊全,社區(qū)活躍度高。我們的論壇項目  就使用了該框架。

怎么簡單分析Flask框架

Flask 框架

為了理解 Flask  框架是如何抽象出Web開發(fā)中的共同部分,我們先來看看Web應(yīng)用程序的一般流程。對于Web應(yīng)用來說,當(dāng)客戶端想要獲取動態(tài)資源時,就會發(fā)起一個HTTP請求(比如用瀏覽器訪問一個  URL),Web應(yīng)用程序會在后臺進(jìn)行相應(yīng)的業(yè)務(wù)處理,(從數(shù)據(jù)庫或者進(jìn)行一些計算操作等)取出用戶需要的數(shù)據(jù),生成相應(yīng)的HTTP響應(yīng)(當(dāng)然,如果訪問靜態(tài)資源,則直接返回資源即可,不需要進(jìn)行業(yè)務(wù)處理)。整個處理過程如下圖所示:

怎么簡單分析Flask框架

實際應(yīng)用中,不同的請求可能會調(diào)用相同的處理邏輯。這里有著相同業(yè)務(wù)處理邏輯的 HTTP 請求可以用一類 URL  來標(biāo)識。比如論壇站點中,對于所有的獲取Topic內(nèi)容的請求而言,可以用 topic// 這類URL來表示,這里的  topic_id 用以區(qū)分不同的topic。接著在后臺定義一個 get_topic(topic_id)  的函數(shù),用來獲取topic相應(yīng)的數(shù)據(jù),此外還需要建立URL和函數(shù)之間的一一對應(yīng)關(guān)系。這就是Web開發(fā)中所謂的路由分發(fā),如下圖所示:

怎么簡單分析Flask框架

Flask底層使用werkzeug來做路由分發(fā),代碼寫起來十分簡單,如下:

@app.route('/topic//')  def get_topic(topic_id):     # Do some cal or read from database     # Get the data we need.

通過業(yè)務(wù)邏輯函數(shù)拿到數(shù)據(jù)后,接下來需要根據(jù)這些數(shù)據(jù)生成HTTP響應(yīng)(對于Web應(yīng)用來說,HTTP響應(yīng)一般是一個HTML文件)。Web開發(fā)中的一般做法是提供一個HTML模板文件,然后將數(shù)據(jù)傳入模板,經(jīng)過渲染后得到最終需要的HTML響應(yīng)文件。

一種比較常見的場景是,請求雖然不同,但響應(yīng)中數(shù)據(jù)的展示方式是相同的。仍以論壇為例,對不同topic而言,其具體topic  content雖然不同,但頁面展示的方式是一樣的,都有標(biāo)題攔,內(nèi)容欄等。也就是說,對于 topic  來說,我們只需提供一個HTML模板,然后傳入不同topic數(shù)據(jù),即得到不同的HTTP響應(yīng)。這就是所謂的模板渲染,如下圖所示:

怎么簡單分析Flask框架

Flask 使用 Jinja2 模板渲染引擎來做模板渲染,代碼如下:

@app.route('/topic//') def get_topic(topic_id):     # Do some cal or read from database     # Get the data we need.     return render_template('path/to/template.html', data_needed)

總結(jié)一下,F(xiàn)lask處理一個請求的流程就是,首先根據(jù) URL  決定由那個函數(shù)來處理,然后在函數(shù)中進(jìn)行操作,取得所需的數(shù)據(jù)。再將數(shù)據(jù)傳給相應(yīng)的模板文件中,由Jinja2 負(fù)責(zé)渲染得到 HTTP  響應(yīng)內(nèi)容,然后由Flask返回響應(yīng)內(nèi)容。

以上就是怎么簡單分析Flask框架,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


分享標(biāo)題:怎么簡單分析Flask框架
當(dāng)前路徑:http://weahome.cn/article/godpis.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部