Flask 是一個輕量級的 Python 網路框架 (Web Framework)。Flask以簡單的核心為基礎,基於 Werkzeug WSGI 工具箱和 Jinja2 模板引擎,讓開發者可以透過擴充套件(extension)自由地增加各種功能,如資料庫、表單驗證和檔案上傳等。這種彈性設計讓 Flask 非常適合開發中小型網站或網路服務。
Flask的核心理念是**「微框架 (Microframework)」**,只提供最基本的路由(Routing)和請求處理功能,讓開發者可以自由選擇和整合其他函式庫,來滿足專案的特定需求。
與 Gradio 不同,Flask 並不自動生成 UI,它提供的是一套堅實的工具集,讓開發者能從零開始建構一個完全客製化的後端服務。
增加專案的靈活性 (Flexibility) 和可擴展性 (Scalability)。
完全掌控 UI 與使用者體驗 (UX):
Gradio 雖然方便,但 UI 元件是固定的,客製化程度低。而 Flask 可以自由地使用 HTML、CSS 和 JavaScript,建構出任何自己想要的頁面佈局和設計。
強大的資料庫與 Web3 整合:
**資料庫(DB)**功能,例如:儲存歷史紀錄、管理使用者帳號、甚至建立使用者訂閱模式,Flask 就能發揮其優勢,讓資料庫操作變得更簡單。反觀 Gradio 較缺乏進階資料庫功能,不適合複雜的資料關係管理。
與 Web3 互動,例如:連接區塊鏈節點、驗證使用者錢包、執行智能合約交易,Flask 的後端架構可以安全且有效地處理這些複雜的邏輯,而不需要將敏感資訊暴露在前端。
資料安全考量,例如:健康資料需要符合 HIPAA 等法規。Flask 具有較完整的資料加密和保護。
建立並啟用虛擬環境:
python -m venv venv
# 在 Windows 上:
# source venv/Scripts/activate
# 在 macOS/Linux 上:
# source venv/bin/activate
安裝 Flask:
pip install Flask
編輯 main.py:
from flask import Flask, render_template
# 建立 Flask 應用程式實例
app = Flask(__name__)
# 定義一個路由 (Route),當使用者訪問根目錄 '/' 時觸發
@app.route('/')
def home():
# 回傳一個簡單的字串
return '<h1>Hello, Flask! 這是我的第一個 Flask 應用程式。</h1>'
# 如果檔案是主程式,則運行應用程式
if __name__ == '__main__':
# 運行應用程式,偵錯模式 (debug=True) 會在程式碼改變時自動重載
app.run(debug=True)
run(執行):
python main.py
終端機會顯示類似這樣的訊息:
在瀏覽器打開這個網址 http://127.0.0.1:5000 會看到:
恭喜成功!