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记录、管理系统日志。