我有一堆API端点,它们在响应中返回text/csv
内容。我该如何记录这一点?以下是我目前拥有的:
/my_endpoint:
get:
description: Returns CSV content
parameters:
- $ref: '#/components/parameters/myParemeters'
responses:
200:
headers:
$ref: '#/components/headers/myHeaders'
content: text/csv
就目前而言,这不起作用,我在Swagger预览中得到了说明:
无法呈现此组件,请参阅控制台。
问题是如何正确显示csv响应的内容?我发现如果我确实添加了一个模式,就可以工作了,类似于这样:
...
content:
text/csv:
schema:
type: array
items:
type: string
...
但是不应该有模式,因为它是csv。回到刚才的问题,描述csv响应内容的正确方法是什么?
4条答案
按热度按时间cwdobuhd1#
第一个示例的语法无效。替换为:
至于你的第二个例子,OpenAPI规范没有提供CSV响应的例子。所以
schema
可以是type: string
,或者一个字符串数组,或者一个空的模式{}
(这意味着“任何值”),或者其他东西。实际支持的语法可能依赖于工具。请随意在OpenAPI Specification repository中要求澄清。7uhlpewt2#
这是openapi 3.0.2从后端返回text/csv内容(字符串)的另一个工作:
合同:
后端:
2j4z5cfb3#
下面是另一个例子:
合同:
后端:
oipij1gg4#
试试这个--它应该可以让你用csv而不是json来记录一个例子。