用途
本技能用于 Flask API 开发,覆盖 Flask 应用开发、蓝图组织、Flask 扩展、REST API 模式以及 Flask 部署等场景。资料以 Golden Armada AI Agent Fleet Platform 为示例背景,展示了一套完整的 Flask API 工程组织方式。
主要能力
- 应用工厂模式:通过
create_app(config_class=Config)创建应用实例,从配置对象加载配置,初始化扩展,注册蓝图与错误处理器,并提供/health健康检查接口。 - 配置管理:
app/config.py中定义基础Config类以及DevelopmentConfig、ProductionConfig、TestingConfig子类,涉及SECRET_KEY、SQLALCHEMY_DATABASE_URI、JWT_SECRET_KEY、JWT_ACCESS_TOKEN_EXPIRES等配置项。 - 扩展初始化:
app/extensions.py中集中创建SQLAlchemy、Migrate、CORS、JWTManager实例。 - 数据模型:示例
Agent模型使用 UUID 主键、名称、类型、状态、JSON 配置字段、创建与更新时间,并提供to_dict()序列化方法,与Task建立一对多关系。 - 蓝图与 REST 路由:
agents蓝图实现列表(支持 type、status 过滤与分页)、按 ID 获取、创建、更新、删除等接口,返回 JSON 响应与相应状态码。 - JWT 认证:
auth蓝图提供登录、刷新令牌、获取当前用户接口,使用create_access_token、create_refresh_token、jwt_required、get_jwt_identity。 - 请求校验:
app/utils/validators.py中的validate_agent_input校验必填字段、长度限制与类型枚举。 - CLI 命令:提供
init-db初始化数据库与seed-db填充示例数据两个命令。
使用方式
资料给出的运行命令包括:
开发环境:
flask run --debug
生产环境(Gunicorn):
gunicorn -w 4 -b 0.0.0.0:8000 "app:create_app()"
数据库迁移:
flask db init
flask db migrate -m "Initial migration"
flask db upgrade
适用场景
适用于需要按规范结构组织 Flask 项目、构建轻量级 Python Web API 的开发者,尤其是涉及蓝图拆分、REST 接口设计、JWT 认证、数据库模型与迁移、CLI 管理的项目。
限制
资料未提供该技能的安装方式、收费模式、价格、平台支持范围、性能或效果数据,这些信息暂未提供。