如何写好swagger文档

什么是swagger

Swagger™的目标是为REST APIs 定义一个标准的,与语言无关的接口,使人和计算机在看不到源码或者看不到文档或者不能通过网络流量检测的情况下能发现和理解各种服务的功能。当服务通过Swagger定义,消费者就能与远程的服务互动通过少量的实现逻辑。类似于低级编程接口,Swagger去掉了调用服务时的很多猜测。 浏览 Swagger-Spec 去了解更多关于Swagger 项目的信息,包括附加的支持其他语言的库。
http://swagger.io

编写方式

  1. 学习swagger-specification,通过swagger-editor手动编写
  2. 通过注释编译生成,如swagger-php
    主要介绍每一种

相关工具

swagger
    OAS(openapi specification)
    swagger-editor
    swagger-ui
    swagger-php
postman
mockjs
    [sosoapi](http://www.sosoapi.com)
    [easy-mock](https://www.easy-mock.com)

http://chancejs.com
https://github.com/dzdrazil/swagger-mock-api
https://github.com/mrVanDalo/swagger-api-mock-docker

学习资料

https://huangwenchao.gitbooks.io/swagger/content/
http://editor2.swagger.io/

参考例子

http://petstore.swagger.io/
http://petstore.swagger.io/v2/swagger.json

工作流

  1. 后端根据需求通过swagger-editor写api文档,规定接口输入输出,并生成swagger.json,可以导入swagger-ui交付给前端
  2. 前端根据后后端提供的swagger.json导入postman做开发测试,或通过接口文档开发测试,同时可以利用sosoapi或easy-mock辅助生成mock接口,先对接。

多人协作可以遇到的问题

  1. 同一套文档经常修改,冲突不好解决
  2. 后端更新文档,前端不知道
  3. 文档更新自动生成

参考资料
https://swagger.io/specification/
http://www.jianshu.com/p/6840514c4c8e
https://huangwenchao.gitbooks.io/swagger/content/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,005评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,042评论 25 709
  • 我决定从今天起每周一更,练练写作能力~ 我一直在想,有没有缘分这种东西,想来想去,应该是有的,但是缘分有深浅,也许...
    大葱味的酱排骨阅读 2,425评论 0 0
  • 嘎吱作响的关节 拾级而上 这该死的丑陋的破旧的阶梯 和我一样滑稽冰凉 不具备情感 塔顶环飞的鸽子被橡皮擦掉了 我的...
    scumalapert阅读 1,751评论 4 4
  • 这既是一篇用户体验报告,也是一篇充电文。第一次尝试千聊付费直播,收听的是微博上关注的@科学家种太阳,曾经是PM,后...
    哩哩Prancy阅读 4,731评论 0 0

友情链接更多精彩内容