背景
当前 Studio 的 ObjectApiConsole 只针对单一 Object 提供 CRUD 测试,无法方便浏览和测试所有 REST API(包括自定义、批量、元数据等)。随着服务逐渐丰富,API数目变多,开发/测试/集成场景需要一站式、高效的"API 控制台"。
目标
实现一个"全局 REST API 控制台",在 Studio 顶级面板提供:
- 自动发现所有已注册的 REST API(Discovery + Meta + Registry)
- 支持分组浏览(如 Data、Metadata、Batch、Auth…),端点树可折叠/搜索/过滤
- 一键填充 method/path/BodyTemplate,快捷编辑并发起请求
- 响应高亮展示(状态/时间/Body)与完整请求历史,支持重放
- 动态 Object 新增/删除后端点自动刷新,不需手写
- 支持 Query Params/Table(OData/数据分页等)表单化填写
- 自动继承平台认证,保障安全
推荐实现路径
- 新增 ApiConsolePage,作为 Studio 顶级入口,支持独立路由
- 新增
ApiConsole/ 组件(EndpointTree + RequestPanel + ResponsePanel + useApiDiscovery),实现左侧分组树+中间请求+右侧响应
- 端点来源:基础 Discovery
/api/v1/discovery + Metadata /api/v1/meta/object,可结合 Registry API/Meta数据完善
- 复用旧 ObjectApiConsole 的 send/history 逻辑,扩展为全局多 API
- UX:分组/折叠/搜索/快速切换,表单式填写参数与 Body(JSON Schema 自动生成可升级为 phase2)
- 支持多环境/变量(预留后续能力),初期以 studio session auth/context 为主
补充
- 中长期目标可参考 Postman、Hoppscotch、Swagger UI,但重点保持 ObjectStack Studio 风格一体化
- 若未来支持 OpenAPI/自定义文档,可接口 Registry/Meta 自动生成(phase2)
Done Criteria
完成后请:
- 更新 ROADMAP.md 标记相关 deliverable
- 增强自动测试覆盖
- 关联所有相关 API/Studio/Registry/Meta issues
如需后续支持 GraphQL/WebSocket/Batch/SwaggerUI集成/收藏夹,请在此 issue 下讨论扩展方案。