我使用 Java Jersey(和 JAXB)编写了一个非常广泛的 REST API。我也使用 Wiki 编写了文档,但这是一个完全手动的过程,非常容易出错,尤其是当我们需要进行修改时,人们往往会忘记更新 wiki。
环顾四周,大多数其他 REST API 也在手动创建他们的文档。但我想知道是否有一个很好的解决方案。
需要为每个端点记录的事情是:
- 服务名称
- 类别
- URI
- 范围
- 参数类型
- 响应类型
- 响应类型架构 (XSD)
- 示例请求和响应
- 请求类型(获取/放置/发布/删除)
- 描述
- 可能返回的错误代码
然后当然有一些通用的东西是全球性的,例如
- 安全
- REST 概述
- 错误处理
- ETC
这些一般的东西可以描述一次并且不需要自动化,但是对于 Web 服务方法本身来说,自动化它似乎是非常可取的。
我考虑过可能使用注释,并编写一个生成 XML 的小程序,然后是一个 XSLT,它应该生成 HTML 中的实际文档。使用自定义 XDoclet 是否更有意义?