我对如何使用Swagger / OpenAPI v2进行文件下载建模感到困惑。举个小例子:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
local:MvxBind="Text FirstName" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
local:MvxBind="Text LastName" />
</LinearLayout>
我将什么用作响应类型?是/files/{name}.zip:
get:
summary: Returns the requested ZIP file as "file download" i.e. with content-disposition = attachment
produces:
- application/zip
parameters:
- name: name
in: path
required: true
type: string
responses:
200:
description: OK
schema:
type: file # <- what is it?
headers:
Content-Disposition:
type: string
description: the value is `attachment; filename="name.zip"`
和type: string
还是仅仅是format: binary
?
我正在查看https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types和https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#response-object(响应数据类型type: file
),但我不清楚两者之间有何不同。什么时候应该使用?
此外,file
标头的使用在选择一个或另一个方面有区别吗?
注意自我,也看过
答案 0 :(得分:2)
在gitter.im上与OpenAPI人士进行私人交谈时,我被告知以下内容。
在OAS v3中,
file
已由type: string, format: binary
代替 因此,如果您打算最终将规格升级到OAS v3,我建议您从现在开始使用二进制文件