gpt4 book ai didi

json - 如何在 OpenAPI 中指定多文件上传?

转载 作者:行者123 更新时间:2023-12-05 03:02:54 26 4
gpt4 key购买 nike

我正在尝试生成数据以填充来 self 的代码库的 OpenAPI 3.0 输入。

我有一个用于将文件上传到服务器的休息端点。

我有一个表单作为用于上传文件的聚合物 vaadin 上传组件。路径为/upload-all,表单参数名称为my-attachment。表单正确地将文件上传到服务器,所以这不是问题。

服务器端点是使用 XQRS RestXQ Uploading Files in HTML Forms 实现的规范。

我正在尝试为 OpenAPI 3.0 用户界面创建一个 OpenAPI JSON 输入以进行多部分文件上传。这是我尝试过的:

"/upload-all": {
"post": {
"consumes": ["multipart/form-data"],
"description": "Upload zip file to the server",
"responses": {
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"parameters": [
{
"in": "formData",
"schema": {
"type": "array",
"items": {
"type": "file"
}
},
"name": "my-attachment"
}
]
}
},

我收到一个错误,表单参数 my-attachment 没有被填充。我错过了什么?我无法在 OpenAPI 网站上找到明确的规范。

更新:我尝试将代码的输出更改为:

"/upload-all": {
"post": {
"requestBody": {
"content": {
"multipart/form-data": {
"schema": {
"properties": {
"my-attachment": {
"type": "array",
"items": {
"format": "binary",
"type": "string"
}
}
}
}
}
}
},
"description": "Upload zip file to the server",
"responses": {
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
},

OpenAPI UI 显示以下内容:

OpenAPI UI

应该是这样的:

file uploads

OpenAPI 用户界面是最新的。这里缺少什么?

最佳答案

您就快完成了 - 只需将 "type": "object" 添加到您的请求正文架构中:

        "requestBody": {
"content": {
"multipart/form-data": {
"schema": {
"type": "object", // <-------
"properties": {
"my-attachment": {
...

确保您使用的是 Swagger UI v. 3.25.3 或更高版本。早期版本 did not support多文件上传。

关于json - 如何在 OpenAPI 中指定多文件上传?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54334438/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com