Flask簡介
Flask簡介
Flask是一個相對於Django而言輕量級的Web框架。
和Django大包大攬不同,Flask建立於一系列的開源軟件包之上,這其中 最主要的是WSGI應用開發庫Werkzeug和模板引擎Jinja:
策略 :werkzeug和Jinja這兩個庫和Flask一樣,都是pocoo團隊開發的。這 或許體現了pocoo與Django競爭時關於生態的一種策略,這種策略的自然 延伸是Flask框架中沒有包含數據庫方面的構件,無論ORM還是其他。
關註點 :Flask是一個WSGI應用框架,這意味著我們進行Flask開發時,不需要 關註網絡方面的操作,Flask應用的入口是封裝過的網絡請求包,出口是 網絡響應,我們僅需要關註這個階段內的處理邏輯。
WSGI服務器 :Flask雖然內置了簡單的WSGI服務器,但其性能僅僅適用於開發期的調試。 Flask官網推薦了多種WSGI服務器,實現方式從多進程到多線程到協程, 這方面的選擇我們在本課程中將不涉及。
REST適應性 :雖然Flask和Django一樣,最初的出發點都是服務端的動態網頁應用。但 Flask的設計使之也相當適用於面向資源的REST架構,在越來越移動化 並且單頁應用越來越重要的WEB開發領域,這是Flask相對於Django相當 大的優勢。
Hello Flask
編寫一個基於Flask的hello world相當容易:
1、導入Flask類
from flask import Flask
Flask類是Flask框架的核心類,它實現了WSGI應用規範。
2、創建Flask實例
app = Flask(__name__)
Flask構造函數的第一個參數指定一個引入名/import_name。Flask框架 使用這個名字進行靜態資源、模板、錯誤信息的定位。除非你清楚的理解它的 作用,通常情況下,我們總應該使用特殊變量__name__。
Flask實例是可調用的(具有__call__方法),這個實例可以直接對接 WSGI服務器。
3、註冊路由
@route(‘/‘)
def index():
return ‘Hello,Flask!‘
註冊路由就是建立URL規則和處理函數之間的關聯。Flask框架依賴於路由
路由中的函數被稱為視圖函數,其返回值將作為HTTP響應的正文內容。
4、對接並啟動WSGI服務器
Flask封裝了一個簡單的開發用WSGI服務器,我們可以通過調用run() 啟動服務器運行:
app.run(host=‘0.0.0.0‘,port=8080)
1. 點擊[運行]按鈕,運行示例程序。 2. 點擊[測試]按鈕,在新開啟的瀏覽器頁面內查看訪問結果
Flask簡介Flask簡介