flask-api-development

flask-api-development

熱門

開發輕量級 Flask API,包含路由、藍圖、資料庫整合、驗證以及請求/回應處理。適用於使用 Flask 建置 RESTful API、微服務或輕量級 Web 服務。

325星標
51分支
更新於 2026/3/4
SKILL.md
唯讀
名稱
flask-api-development
描述

開發輕量級 Flask API,包含路由、藍圖、資料庫整合、驗證以及請求/回應處理。適用於使用 Flask 建置 RESTful API、微服務或輕量級 Web 服務。

Flask API 開發

目錄

概覽

使用藍圖進行模組化組織、SQLAlchemy 作為 ORM、JWT 驗證、全面的錯誤處理以及遵循 REST 原則的請求驗證,建立高效的 Flask API。

使用時機

  • 使用 Flask 建置 RESTful API
  • 建立低開銷的微服務
  • 實作輕量級驗證系統
  • 設計具有適當驗證的 API 端點
  • 與關聯式資料庫整合
  • 建置請求/回應處理系統

快速開始

最小可運作範例:

# app.py
from flask import Flask, request, jsonify
from flask_cors import CORS
from flask_sqlalchemy import SQLAlchemy
from flask_jwt_extended import JWTManager
import os

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = os.getenv('DATABASE_URL', 'sqlite:///app.db')
app.config['JWT_SECRET_KEY'] = os.getenv('JWT_SECRET_KEY', 'dev-secret')
app.config['JSON_SORT_KEYS'] = False

db = SQLAlchemy(app)
jwt = JWTManager(app)
CORS(app)

# 請求 ID 中介層
@app.before_request
def assign_request_id():
    import uuid
    request.request_id = str(uuid.uuid4())

# 錯誤處理器
@app.errorhandler(400)
def bad_request(error):
// ... (完整實作請參閱參考指南)

參考指南

references/ 目錄中的詳細實作:

指南 內容
Flask 應用程式設定 Flask 應用程式設定
使用 SQLAlchemy 的資料庫模型 使用 SQLAlchemy 的資料庫模型
驗證與 JWT 驗證與 JWT
用於模組化 API 設計的藍圖 用於模組化 API 設計的藍圖
請求驗證 請求驗證
應用程式工廠與設定 應用程式工廠與設定

最佳實踐

✅ 應該

  • 使用藍圖進行模組化組織
  • 使用 JWT 實作適當的驗證
  • 驗證所有使用者輸入
  • 使用 SQLAlchemy ORM 進行資料庫操作
  • 實作全面的錯誤處理
  • 對集合端點使用分頁
  • 記錄錯誤和重要事件
  • 回傳適當的 HTTP 狀態碼
  • 正確實作 CORS
  • 使用環境變數進行設定

❌ 不應該

  • 在程式碼中儲存機密
  • 使用全域變數作為共享狀態
  • 忽略資料庫交易
  • 未經驗證就信任使用者輸入
  • 在生產環境中回傳堆疊追蹤
  • 使用可變的預設引數
  • 忘記處理資料庫連線錯誤
  • 在路由處理器中實作驗證