我的同事,在没有任何东西进入2个月后,已被置于我的下方。
今天他们改变了一些api电话,让我的一些已经运行了几个月的东西停止工作。他们改变了一些字段的名称以及它们的工作方式。
如何在将来检测他们何时这样做。
Swagger.io是我正在谈论的招摇。
答案 0 :(得分:2)
目前,虽然有这样的工具has been requested,但没有工具可以在swagger文档之间提供差异。创建这样的工具一定不容易,因为如果操作路径改变了,例如,旧的和新的之间没有真正的链接方式。
但是,Swagger不会取代正确的API版本管理。就像任何软件一样,需要控制API。您有apiVersion
属性,用于表示此类更改。
答案 1 :(得分:2)
Ron在更大的方案中是正确的,但是如果你只需要表明发生了重大变化,请记住swagger会生成一个标准化的JSON文件,您可以在版本控制中进行差异和跟踪。如果你的API代码和你的swagger输出有版本控制,你可以显示某人做了他们不应该做的事情,因为代码和招摇不会在同一个差异中。
换句话说,如果您同时跟踪代码和swagger JSON,您可以强制要求两者都应出现在相同的提交差异中,并且api版本应根据某种标准进行更新。
答案 2 :(得分:0)
我知道这个问题很老,但是为了使人们最终在这里寻找答案:现在有一个解决方案,称为Swagger Diff。它可以比较两个swagger.json
文件,并突出显示所有更改。
您甚至可以在构建过程中使用的Ruby版本,如果存在任何不兼容,则会使构建失败。 Java版本当前仅显示更改列表。