我想在JSON文件中创建一个表
是否有任何解决方法在openapi.json中包含表?
OpenAPI 2.0使用GitHub Flavored Markdown,它支持表格的常用Markdown语法,例如:
| One | Two | Three |
|-----|-----|-------|
| a | b | c |
(例子来自this answer)
在JSON中,您可以将其写为:
// JSON example
"description": "Sample table:\n\n| One | Two | Three |\n|-----|-----|-------|\n| a | b | c |"
获得JSON的最简单方法是使用http://editor.swagger.io格式化和预览文本,然后将定义下载为JSON。
在YAML中,确保缩进正确(多行文本中的所有行都需要缩进与键名相关):
# YAML example
swagger: '2.0'
info:
version: 0.0.0
title: Table demo
description: |
Sample table:
| One | Two | Three |
|-----|-----|-------|
| a | b | c |
paths: {}
OpenAPI 3.0规范states that工具必须至少支持CommonMark v. 0.27+,并且可能在CommonMark之上支持额外的Markdown语法。
CommonMark本身does not have table syntax,但您可以使用HTML <table>
元素作为解决方法:
// JSON example
"description": "Sample table:\n\n<table><tr><td>One</td><td>Two</td><td>Three</td></tr><tr><td>a</td><td>b</td><td>c</td></tr></table>"
而在YAML:
openapi: 3.0.0
info:
version: 0.0.0
title: Table demo
description: |
Sample table:
<table>
<tr>
<td>One</td>
<td>Two</td>
<td>Three</td>
</tr>
<tr>
<td>a</td>
<td>b</td>
<td>c</td>
</tr>
</table>
paths: {}
也就是说,Swagger UI v.3.22.0+和Swagger Editor v.3.6.27+支持OAS3的GFM表语法(除了CommonMark),因此这些工具的用户可以使用熟悉的Markdown表语法:
# Works in Swagger UI and Swagger Editor
openapi: 3.0.0
info:
version: 0.0.0
title: Table demo
description: |
Sample table:
| One | Two | Three |
|-----|-----|-------|
| a | b | c |
paths: {}