我遇到类似于here和here所述的问题。我有一个服务,它返回一个pdf文件作为附件Content-Disposition
标题。当我从浏览器调用端点时,这可以工作 - 文件已下载。在Swagger UI上,我在调用响应内容类型为application/pdf
的服务后获得了一个下载链接,但是该链接会下载一个空的pdf文件:
请注意,我的swagger.json
是由Enunciate(版本2.3.0)生成的,相关部分如下所示:
"responses": {
"200": {
"schema": {
"description": "",
"$ref": "#/definitions/json_File"
}, ...
我尝试在此添加"type": "file"
,但它没有解决问题。这里可能出现什么问题?
答案 0 :(得分:1)
您可以将响应的返回类型(200)记录为二进制(格式):
responses:
'200':
description: successful operation
schema:
type: string
format: binary
根据规范,"二进制" (格式)指"任何八位字节序列 "
参考:https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types