套件概覽
一個 Flutter/Dart 套件,使用 Freezed 產生不可變資料類別,使用 Dio 進行 HTTP 請求,從 OpenAPI 規範產生類型安全的模型與 API 客戶端。它透過自動產生針對 API 結構的 Dart 程式碼,簡化後端整合,減少重複程式碼並提升可維護性。適用於依賴透過 OpenAPI(Swagger)定義的 REST API 的專案,確保 API 合約與客戶端實作之間的一致性。
適用情境
- 從 OpenAPI 規範自動產生 API 客戶端
- 使用 Freezed 建立不可變的資料模型
- 簡化 Flutter 應用中的 REST API 集成
- 保持 API 和客戶端代碼之間的同步
- 使用共享 API 邏輯支援多平台應用
主要特色
- 從 OpenAPI 文件生成程式碼
- 使用 Freezed 的不可變模型
- 基於 Dio 的 HTTP 客戶端整合
- 類型安全的 API 端點
- 可自定義的程式碼產生範本
適合對象
- 使用 OpenAPI 定義的 API 的 Flutter 開發人員
- 需要一致的 API 客戶端生成的團隊
- 需要不可變數據模型的項目
- 針對多個平台的應用
- 希望減少手動 API 程式碼的開發人員
使用建議
- 需要一個 OpenAPI 規範檔案
- 產生的程式碼在更新時必須小心管理
- 僅限 OpenAPI 2.0 和 3.x 格式
- 對於複雜架構,可能需要手動設定
- 在 CI/CD 流水線中使用效果最佳,可實現一致的再生
