FitNote 健身筆記
FitNote的誕生是為了更好地記錄在力量訓練中負重的變化情況,也可以說是力量訓練筆記本。
體驗地址:fitnote.inhere.top
體驗賬號:abc / 123456
暫時暫未開放註冊,有需要可以留言給你開通賬號。
開發詳情
前端
前端基於React.js 16.0 +
並採用material-ui
前端UI
框架。
目前專案不復雜,並未使用Redux
等狀態管理工具。
技術涉及:
React V16
部分新特性。React-Router 4
。- 封裝
Axios
作為BaseService
,統一處理介面。 PWA
漸進式程式,可以像原生App
一樣新增在裝置應用中,並支援離線使用。(目前還在開發Service Worker
,暫時離線功能不支援資料儲存於獲取)
後端
採用Koa.js
資料庫使用MySQL 5.7
,對框架資料處理層——dao
層進行封裝,使用繼承來模組化Module
等等,很大程度上提升系統易用性與安全性。
特性
- 模組化業務層。(每個
Module
自行管理Router/Dao/Controller
) - 抽象
Middleware
層,每個模組可以更方便的組合自己需要的中介軟體。 - 統一錯誤捕獲與處理。
- 統一解碼
jwt
。 - 封裝訊息處理,統一管理
API
訊息。 - 記錄訪問。
安全策略:
- 採用
JWT(Json Web Token)
來做介面安全檢查,並封裝許可權效驗中介軟體。 - 封裝資料庫類,統一處理資料庫層面可能發生的安全問題。
- 記錄每一次的
API
進/出,可以更具需要處理與分析風險。 - 使用
log4js
記錄、管理系統日誌。