项目简介
本项目是基于Python Flask框架的Web API项目,主要提供用户管理功能。实现了统一的RESTful API响应格式,具备用户登录、权限校验、数据库操作等能力。借助Flask - SQLAlchemy和Flask - Marshmallow实现高效的数据库操作与数据的序列化、反序列化。同时提供了Docker部署方案,方便在容器化环境中运行。
项目的主要特性和功能
- 统一RESTful响应格式:遵循RFC标准的status code规范,成功响应直接返回JSON数据,异常响应返回
code
和message
。 - 用户登录与认证:采用HTTPTokenAuth机制,支持通过token进行用户认证,有用户注销、修改密码等功能。
- 权限校验:支持基于角色的权限控制,通过
verify_auth_token
进行token校验,依据用户角色决定是否允许访问特定API。 - ORM模型与序列化:利用Flask - SQLAlchemy进行数据库操作,Flask - Marshmallow进行数据的序列化与反序列化,简化数据库操作流程。
- Docker部署:提供完整的Docker部署方案,支持Jenkins、MySQL、Nginx等组件的容器化部署,适用于开发和生产环境。
安装使用步骤
环境准备
- 确保已安装Python 3.7及以上版本。
- 安装项目依赖库,运行以下命令:
bash pip install -r requirements.txt
数据库设置
- 根据项目配置文件(如
config.py
)设置数据库连接信息,确保MySQL数据库已正确配置并运行。 - 运行数据库迁移命令以创建数据库表:
bash flask db upgrade
运行应用
- 启动Flask应用,运行以下命令:
bash flask run
- 或者使用uWSGI启动应用:
bash uwsgi --ini uwsgi_config.ini
测试
- 运行测试脚本,确保API功能正常:
bash pytest
Docker部署
- 创建Docker网络:
bash docker network create test-fly-network
- 使用
docker-compose
启动服务:bash docker-compose up -d
- 确保Jenkins、MySQL、Nginx等服务正常运行,并根据需要进行配置。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】