我见过的最靠谱的进度杀手,不是什么高难度的工程问题,而是前端干坐着,等一个“马上就好”的接口。我们在公司最后定下的解法很无聊,但很管用:写代码之前,先用 OpenAPI 把接口契约谈妥。
等待的游戏#
传统流程是串行的:后端先设计并实现 API,等接口真正能跑了,前端才开始对接。后端的每一次延误都会直接砸到前端的日程表上,而发布日期恰恰写在前端的日程表里。
契约在前,代码在后#
按 schema 优先的流程,两边几乎可以同时起跑。在一行代码都不存在的时候,先把 API 的结构写进 OpenAPI schema——每个端点、请求和响应模型、认证方式、错误码。这份文档就是前后端之间的合同。
回报来得很快。功能还没开工,所有人对它的理解就已经一致。后端还在实现,前端就能开始搭 UI。变更也转得更快,因为只有一份公认的事实来源需要更新。而且 schema 可以直接生成模拟服务器,在一个真实接口都没有的时候,前端测试就能开跑。
实际怎么跑#
- 收集需求,跟做任何东西一样。
- 设计 schema:端点、请求/响应模型、认证、错误码。
- 让前端和后端一起评审——契约的价值就体现在这一步。
- 生成模拟服务器(Swagger 和 Postman 都能做),前端先对着它集成。
- 后端照着同一份 schema 实现真实接口。
- 接口做好一个就替换一个模拟端点,持续测试,确保契约没被破坏。
- 保持沟通。schema 是活文档,不是石碑。
要付的代价#
这套流程不是免费的。提前写一份周全的 schema 要花实打实的时间。需求一变,得先改 schema,涟漪会波及两个团队。另外每个人都得对 OpenAPI 和配套工具有基本的手感。
即便如此,我还没见过这笔前期投入输给它省下的集成混乱。前端第一天就能开工,而争论发生在文档上,而不是发生在挂掉的构建里。

