当前位置:   article > 正文

Swagger2.0 API文档 YAML中文解释_swagger.yaml

swagger.yaml

下面是swagger生成api的接口文档yaml版。

  1. #必要字段!Swagger规范版本,必须填2.0,否则该YAML将不能用于Swagger其他组件
  2. swagger: '2.0'
  3. #必要字段!描述API接口信息的元数据
  4. info:
  5. #接口标题
  6. title: swagger说明文档 
  7. #接口文档的描述
  8. description: 学习Swagger
  9. #版本号
  10. version: 1.0.0
  11. #Swagger会提供测试用例,host指定测试时的主机名,如果没有指定就是当前主机,可以指定端口.
  12. host: 127.0.0.1
  13. #定义的api的前缀,必须已/开头,测试用例的主机则为:host+bashPath
  14. basePath: /api
  15. #指定调用接口的协议,必须是:"http", "https", "ws", "wss".默认是http.-表示是个数组元素,即schemes接受一个数组参数
  16. schemes:
  17. - http
  18. - https
  19. #对应与http协议头request的Accept,调用者可接受类型,默认是*/*,定义的类型必须是http协议定义的 Mime Types,RestfulAPI一般定义成application/json
  20. #这两个是对所有接口的全局设置,在细化的接口中是还可以对应这两个属性来覆盖全局属性
  21. produces:
  22. - application/json
  23. #必要字段!定义可有可操作的API
  24. paths:
  25. /users:
  26. #必要字段!定义HTTP操作方法,必须是http协议定义的方法
  27. get:
  28. #接口概要
  29. summary: 查询所有用户信息
  30. #接口描述
  31. description: 查询出所有用户的所有信息,用户名,别名
  32. #标签,方便快速过滤出User相关的接口
  33. tags:
  34. - User
  35. #返回值描述,必要自动
  36. responses:
  37. #返回的http状态码
  38. 200:
  39. description: 所有用户信息或者用户的集合信息
  40. #描述返回值
  41. schema:
  42. #返回值格式,可选的有array,integer,string,boolean
  43. type: array
  44. #针对array,每个条目的格式,type定义为array.必要填写items
  45. items:
  46. #引用在definitions下定义的Users
  47. $ref: '#/definitions/User'
  48. #执行出错的处理
  49. default:
  50. description: 操作异常,执行失败.返回信息描述错误详情
  51. schema:
  52. #值类型
  53. type: object
  54. #定义属性
  55. properties:
  56. #属性名
  57. message:
  58. #类型
  59. type: string
  60. #即对于同一个url定义两个不同的方法,表示两个接口
  61. post:
  62. description: 注册一个用户
  63. #请求参数
  64. parameters:
  65. #参数key
  66. - name: username
  67. #传递方法,formData表示表单传输,还有query表示url拼接传输,path表示作为url的一部分
  68. #body表示http头承载参数(body只能有一个,有body不能在有其他的)
  69. in: formData
  70. #参数描述
  71. description: 用户名,不能使用已经被注册过的
  72. #参数是否必要,默认false
  73. required: true
  74. #参数类型,可选的包括array,integer,boolean,string.使用array必须使用items
  75. type: string
  76. - name: password
  77. in: formData
  78. description: 用户登陆密码,加密传输,加密存储
  79. required: true
  80. type: string
  81. - name: alias
  82. in: formData
  83. type: string
  84. description: 用户别名
  85. #非必要字段
  86. required: false
  87. responses:
  88. #返回的http状态码
  89. 200:
  90. description: 通过返回值来标示执行结果 返回true表示执行成功
  91. schema:
  92. #值类型
  93. type: object
  94. #定义属性
  95. properties:
  96. #属性名
  97. status:
  98. #类型
  99. type: boolean
  100. #描述
  101. description: 是否成功
  102. #执行出错的处理
  103. default:
  104. description: 操作异常,执行失败.返回信息描述错误详情
  105. schema:
  106. #值类型
  107. type: object
  108. #定义属性
  109. properties:
  110. #属性名
  111. message:
  112. #类型
  113. type: string
  114. /users/{id}:
  115. #{id}表示id为请求参数,例如/users/1,/users/2都是对该API的请求,此时id即为1和2
  116. get:
  117. summary: 根据用户名id查询该用户的所有信息
  118. description: 查询出某个用户的所有信息,用户名,别名等
  119. tags:
  120. - User
  121. parameters:
  122. #上面接口中定义了{id},则参数列表中必须包含参数id,并且请求类型为path
  123. - name: id
  124. in: path
  125. description: 要查询的用户的用户名,它是唯一标识
  126. required: true
  127. type: string
  128. responses:
  129. 200:
  130. description: 所有用户信息或者用户的集合信息
  131. schema:
  132. $ref: '#/definitions/User'
  133. default:
  134. description: 操作异常,执行失败.返回信息描述错误详情
  135. schema:
  136. #值类型
  137. type: object
  138. #定义属性
  139. properties:
  140. #属性名
  141. message:
  142. #类型
  143. type: string
  144. #http定义的delete方法,删除一个资源
  145. delete:
  146. summary: 删除用户
  147. description: 删除某个用户的信息,被删除的用户将无法登陆
  148. parameters:
  149. - name: id
  150. in: path
  151. type: string
  152. required: true
  153. description: 用户的唯一标示符
  154. tags:
  155. - User
  156. responses:
  157. 200:
  158. description: 通过返回值来标示执行结果 返回true表示执行成功
  159. schema:
  160. #值类型
  161. type: object
  162. #定义属性
  163. properties:
  164. #属性名
  165. status:
  166. #类型
  167. type: boolean
  168. #描述
  169. description: 是否成功
  170. default:
  171. description: 操作异常,执行失败.返回信息描述错误详情
  172. schema:
  173. #值类型
  174. type: object
  175. #定义属性
  176. properties:
  177. #属性名
  178. message:
  179. #类型
  180. type: string
  181. #描述错误信息
  182. #http定义的patch方法,表示修改一个资源
  183. patch:
  184. summary: 用户信息修改
  185. description: 修改用户信息(用户名别名)
  186. parameters:
  187. - name: id
  188. in: path
  189. description: 用户名,要修改的数据的唯一标识符
  190. required: true
  191. type: string
  192. - name: alias
  193. in: formData
  194. description: 新的用户别名
  195. required: true
  196. type: string
  197. tags:
  198. - User
  199. responses:
  200. 200:
  201. description: 通过返回值来标示执行结果 返回true表示执行成功
  202. schema:
  203. #值类型
  204. type: object
  205. #定义属性
  206. properties:
  207. #属性名
  208. status:
  209. #类型
  210. type: boolean
  211. #描述
  212. description: 是否成功
  213. default:
  214. description: 操作异常,执行失败.返回信息描述错误详情
  215. schema:
  216. #值类型
  217. type: object
  218. #定义属性
  219. properties:
  220. #属性名
  221. message:
  222. #类型
  223. type: string
  224. #描述错误信息
  225. definitions:
  226. User:
  227. #值类型
  228. type: object
  229. #定义属性
  230. properties:
  231. #属性名
  232. id:
  233. #类型
  234. type: string
  235. #描述
  236. description: 用户的唯一id
  237. username:
  238. type: string
  239. description: 用户名
  240. alias:
  241. type: string
  242. description: 别名

swagger官方在线编辑器: https://editor.swagger.io/

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/897748
推荐阅读
相关标签
  

闽ICP备14008679号