【发布时间】:2019-05-11 00:26:33
【问题描述】:
我过去曾将 Swagger 用于 Java REST API,它是实现此目的的最佳可用工具。
swagger 是否支持为 Thrift RPC 文件生成文档?
【问题讨论】:
我过去曾将 Swagger 用于 Java REST API,它是实现此目的的最佳可用工具。
swagger 是否支持为 Thrift RPC 文件生成文档?
【问题讨论】:
简短回答否 - Swagger 不支持节俭。
这最接近 swagger,幸运的是,它为 thrift 提供了开箱即用的支持
此命令为给定的 thrift 文件生成 HTML 文档。
thrift -r --gen html your-thrift.thrift
在挖掘这个的同时发现你可以自动生成 thrift 文件中定义的数据结构图
thrift -r --gen gv your-thrift.thrift
dot -Tpdf -o your-thrift.pdf gen-gv/your-thrift.gv
【讨论】:
Thrift RPC 文件
Thrift 基本文档是 Thrift IDL,或接口描述语言。
此 IDL 以高级方式描述 API,同时用作生成语言绑定所需代码的输入。
为了实现这一点,Thrift IDL 文件不仅包含声明,还允许在其中使用 bot normal cmets 和所谓的“doc cmets”。许多语言绑定支持从 doc-cmets 直接转换为特定语言的形式,因此文档也可以在生成的代码中找到。
源代码树中有一个good example for documentation inside a Thrift IDL file。此外,考虑使用 GraphViz 生成器 (-gen gv) 为您的 IDL 或 HTML 生成器 (-gen html) 或(相当旧的)XSD 生成器获取图形文档。
Swagger(或 Apiary)提供了一种 UI 类型的交互方式来使用实现。这是当今 Thrift 中没有的东西。
swagger 是否支持为 Thrift [...] 文件生成文档?
Swagger 处理 RESTful 服务。 Thrift 是一个 RPC 系统,两者在概念上有一些区别。因此,swagger 不太可能达到能够记录除 REST 之外的任何内容的程度。
【讨论】: