在Openapi中,响应的例子需要在Swagger UI/Redoc等中提供下载链接。
我使用OpenAPI 3.1和API之一。我需要显示响应的例子,作为托管(本地)基于External Examples的PDF文件。它可能是用于下载PDF的UI链接。在尝试了各种方法后,我无法在Swagger UI和Redoc UI中获得下载文件的链接。
我正在使用基于JSON的OpenAPI。我已经参考了Open API 3 - add headers on individual content-type in responses并在JSON中实现了它。但在我的情况下,我无法使其工作。
样品如下:
"/myapplication/pdfresponse": {
"get": {
"responses": {
"200": {
"description": "PDF format response.",
"content": {
"application/pdf": {
"schema":{
"type": "string",
"format":"binary"
},
"examples":{
"exampleName":{
"summary":"PDF format.",
"externalValue": "examples/abc.pdf"
}
}
}
},
"headers":{
"Content-Disposition":{
"schema":{
"type": "string",
"example": "attachment; filename=abc.pdf"
}
}
}
}
}
字符串
可能是标题的内容配置是错误的或其他东西是必需的。请提供JSON的样本或让我知道,如果我错过了什么。谢谢...!
1条答案
按热度按时间mv1qrgav1#
我想你要求的是提供一个pdf文件的下载网址。
您需要使用
externalValue
并提供作为下载位置的uri
除非你把文件存放在本地以外的地方,否则这可能不会起作用。我有一种感觉,cors会在ui的本地示例上阻止这个请求。
我知道在写这篇文章的时候,Redoc并没有解决
externalValue
的uri。如果你想评论,贡献或者以其他方式了解它的进展,你可以关注this issue。字符串