请问各位,公司内部的接口文档是怎么管理的?

2017-09-12 19:48:51 +08:00
 MrXiong
  1. 公司准备使用 swagger,基于注解的方式,但是发现多个项目无法集成,很不方便
  2. swagger-ui 中没有接口的搜索功能

请问各位还有啥比较好用的轮子?

18353 次点击
所在节点    Java
119 条回复
my3157
2017-09-13 11:24:23 +08:00
昨天正好也在看这个, 转了一圈, 目前做 api 文档管理的有 nei easyapi eolinker apizza RAP , 体验了其中 eolinker 和 apizza, 最后选择了 postman, 不但能做文档, 顺便还写了 api 测试 , 免费档已够用
lifeforwater
2017-09-13 11:31:41 +08:00
小幺鸡
zjsxwc
2017-09-13 11:33:51 +08:00
邮件
xxdd
2017-09-13 11:44:08 +08:00
看我口型
orancho
2017-09-13 11:53:53 +08:00
@lgh

如果你用 gRPC 的话,可以直接将 proto 文件中定义的 service 名传给 invoke 函数。对于使用 protobuf 的 RESTful API,我司一般的方法是在对应的 message 前的注释中写上对应的 URI。
leaybc
2017-09-13 11:58:02 +08:00
我在用 swagger 然后配合第三方的 UI . 感觉挺好的
silov
2017-09-13 12:01:18 +08:00
markdown 丢 git 上 ==
Simcyber
2017-09-13 12:30:31 +08:00
口口相传+1024
MrXiong
2017-09-13 12:42:58 +08:00
@leaybc 有啥 ui 推荐
ezreal
2017-09-13 12:52:06 +08:00
口口相传
laudukang
2017-09-13 13:00:38 +08:00
口口相传
Vindroid
2017-09-13 13:02:24 +08:00
GitLab
qscqesze
2017-09-13 13:03:48 +08:00
口口相传,最多写个 wiki 解释一下
zhygkx
2017-09-13 13:06:48 +08:00
dreamwar
2017-09-13 13:08:49 +08:00
心灵感应
owenliang
2017-09-13 13:09:46 +08:00
gitlab README
c0878
2017-09-13 13:12:23 +08:00
mkdocs
l00t
2017-09-13 13:17:19 +08:00
Excel + svn
siteshen
2017-09-13 13:27:44 +08:00
我们公司使用的 swagger,不过默认的“先设计好 *所有* API 格式,再生成代码模版”的方式并不适合我们(因为随时需要增加新的 API 和扩展现有的 API ),我们的使用方式如下:

1. python/go 代码按正常逻辑写,如:
// method, url, input format, output format
routes = [("POST", "/me/update", UpdateMeForm, MeResponse, ["tag1", "tag2", ...])]

2. 自定义函数 ToSwaggerJSON(method, url, request_form, response_object) 生成对应的 swagger.json 文件,然后交给 swagger-ui 处理其余事情;

3. 客户端在浏览器查看 API 文档,几乎没有进行过 API 问题的沟通。

ps: 最大的难点在于 ToSwagger() 函数,python/go 都没找到合适的库,花了不少的时间(印象中 python/go 各一周?),自己查看 swagger 文档实现了部分接口格式。
Lucups
2017-09-13 13:29:52 +08:00
@feiyuanqiu 改好了提 pull request 回馈社区~~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/390148

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX