OpenAPI 规范校验与模拟服务器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/openapi-spec-validator-mock-server-2。
技能介绍
要解决什么问题
前后端基于 OpenAPI 3.x 规范协作时,最常见的坑往往不是「接口写错了」,而是规范文件本身不可靠:schema 定义前后不一致、请求示例缺失、字段类型对不上。这类问题通常要拖到联调阶段才暴露,修复成本高。与此同时,后端接口还没就绪时,前端开发者急需一个能返回结构正确响应的模拟服务,而不是反复手写临时 mock。
技能如何工作
这个技能把「规范校验」和「模拟服务」串成一条流水线,核心分三步:
- 规范校验:用
swagger-parser解析并校验 OpenAPI 3.x 文档,定位 schema 不一致、示例缺失等结构性问题 - 模拟服务:校验通过后,基于规范用 Prism 生成 HTTP mock server,自带请求校验(validation)与内容协商(content negotiation)
- 客户端桩代码:通过
openapi-generator依据规范生成 SDK 客户端桩,省去手写调用样板的功夫
Prism 本身是一个命令行运行的开源 HTTP 服务器,既可以独立使用,也可以挂进 CI 流程做持续的规范校验。
适用边界与注意事项
- 技能基于 Prism 3.x 编写;如果项目仍停留在 2.x,行为可能存在差异
- Prism 默认绑定
localhost(通常是127.0.0.1),在 Docker 中运行时可能无法访问 mock server,需要额外配置端口映射 - 依赖 Node.js 版本不低于 18.20.1
openapi-generator生成的桩代码只是起点,字段命名、错误处理等仍需按项目习惯二次调整
使用场景
- 后端接口未就绪,前端需要按 OpenAPI 规范先拿到结构正确的模拟响应联调
- 规范文档改完后,在 CI 流水线里用 Prism 校验是否引入 schema 不一致
- 发现字段类型对不上,先用 swagger-parser 定位缺失示例和 schema 冲突
- 下游客户端要接入新接口,用 openapi-generator 生成基础调用代码再自行调整
适合人员
- 后端工程师,接口开发排期靠后,需要先给前端提供可用的模拟服务
- 前端工程师,依赖外部接口进度,要按规范自行拉起 mock 推进开发
- API 平台负责人,负责维护 OpenAPI 文档质量,要在 CI 中拦截结构性问题
- SDK 维护者,需要从规范批量生成客户端桩代码再做项目化适配