HOWTO · Flask
執行 Flask 應用程式
設定 Python 虛擬環境,安裝 Flask,建立一個小型 app.py 應用程式,並在本機執行。
本頁內容
若要執行 Flask 應用程式,請建立 Python 虛擬環境,在其中安裝 Flask,將路由儲存在 app.py,再透過 Flask 命令列介面啟動開發伺服器。接著在瀏覽器中開啟伺服器顯示的本機網址,即可查看路由的回應。本指南使用 Visual Studio Code,但使用其他編輯器也能套用相同的檔案與指令。
建立基本的 Flask 應用程式
Flask 是用來建立網頁應用程式與 API 的 Python 網頁框架。小型專案需要 Python、安裝在專案環境中的 Flask,以及一個用來定義應用程式和路由的 Python 檔案。
首先,在 Visual Studio Code 中開啟專案資料夾,並在整合式終端機執行 python --version,確認能使用 Python。這個指令應會顯示已安裝的 Python 版本。有些系統使用 python3 作為 Python 指令名稱;若是如此,請在檢查版本、建立環境及後續執行指令時一致使用這個名稱。
在專案資料夾中執行 python -m venv .venv 來建立虛擬環境。虛擬環境會將此專案的套件與其他 Python 專案及系統安裝分開。請依照使用的終端機執行相應的啟用指令:
- Windows 命令提示字元:
.venv\Scripts\activate.bat - Windows PowerShell:
.venv\Scripts\Activate.ps1 - macOS 或 Linux:
source .venv/bin/activate
啟用環境後,執行 python -m pip install Flask 安裝 Flask。使用 python -m pip 可確保套件安裝到目前啟用環境所選用的 Python 直譯器。如果終端機顯示找不到 python,且系統有安裝 python3,請改用 python3 重複執行這些指令。在 Visual Studio Code 中,如果編輯器未自動偵測到環境,請選取 .venv 直譯器。
在專案資料夾中建立名為 app.py 的檔案,並加入這個最精簡的應用程式。執行 python app.py 時,它的測試用戶端會向根路由送出請求,並印出回應:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def index():
return "Hi there, this is our basic Flask app."
if __name__ == "__main__":
response = app.test_client().get("/")
print(response.get_data(as_text=True))
Hi there, this is our basic Flask app.
Flask 類別會建立應用程式物件。@app.route("/") 裝飾器會將網站的根路徑對應至 index,而函式傳回的字串會成為瀏覽器收到的回應。測試用戶端會呼叫這個路由,但不會開啟網路連接埠。只有直接執行此檔案時,if __name__ == "__main__": 區塊才會執行檢查;從其他模組匯入此檔案不會印出回應。範例中的回應文字是 Hi there, this is our basic Flask app.,此文字在程式碼中維持英文。
若要在瀏覽器中查看應用程式,請保持環境啟用,並讓終端機位於 app.py 所在資料夾,再執行 flask --app app run 啟動 Flask 開發伺服器。如果系統使用 python3,請啟用以該直譯器建立的環境,並使用相應的 Flask 指令。Flask 會顯示本機網址,常見的網址是 http://127.0.0.1:5000;請開啟終端機實際顯示的完整網址。造訪根路徑時,頁面會顯示 Hi there, this is our basic Flask app.。使用頁面期間,請讓終端機中的伺服器程序持續執行;要停止伺服器,請在該終端機按下 Ctrl+C。執行 python app.py 則會進行上方所示的路由檢查,然後結束。
Flask 內建伺服器適用於本機開發。請勿將它作為正式環境伺服器對外使用,也不要在正式環境部署時啟用偵錯模式;請改用適合主機的正式 WSGI 伺服器與部署設定。