app.py 文件解读
该文件是应用的核心,包含所有路由定义和业务逻辑,主要分为以下模块:
1. 应用初始化配置
app = Flask(__name__)
app.config['SECRET_KEY'] = 'stp_mock_dev_key_2024' # 安全密钥
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///stp_mock.db' # SQLite数据库
app.config['MOCK_BASE_URL'] = '/api/mock' # Mock服务基础路径
# 初始化数据库和Faker
db.init_app(app)
fake = Faker('zh_CN') # 用于生成中文模拟数据
-
配置了数据库连接、安全密钥等基础参数 -
通过context_processor向所有模板注入公共变量
2. 项目管理功能(完整 CRUD + 启用 / 禁用)
-
project_list():展示所有项目列表 -
create_project():创建新项目(GET 展示表单,POST 处理提交) -
edit_project(project_id):编辑项目信息 -
delete_project(project_id):删除项目(POST 方法确保安全) -
支持项目的启用 / 禁用状态管理
3. API 接口管理功能
-
api_list(project_id):展示指定项目下的所有 API -
create_api(project_id):为指定项目创建新 API -
edit_api(api_id):编辑 API 的详细信息 -
delete_api(api_id):删除指定 API
4. 透传规则管理功能(重点完善部分)
-
pass_rule_list():展示所有透传规则 -
create_pass_rule():创建新的透传规则 -
edit_pass_rule(rule_id):编辑现有规则(解决之前点击无响应问题) -
delete_pass_rule(rule_id):删除规则(修复点击无响应问题) -
toggle_pass_rule_active(rule_id):新增的启用 / 禁用切换功能
-
通过 POST 请求切换规则状态,操作后返回规则列表页 -
提供明确的操作结果提示(如 "已启用"/"已禁用")
5. 其他功能
-
首页路由index():展示平台概览和统计数据 -
请求日志路由log_list():展示最近 100 条请求记录 -
Mock 服务核心路由:处理实际的 Mock 请求和透传逻辑

