将 formData 从 swagger json 导入 AWS API 网关时出错
Error while importing formData from swagger json to AWS API Gateway
我正在使用 flask-restx
构建带有 swagger 的应用程序 UI,我试图将此 swagger 文件作为文档部分上传到 AWS API Gateway
。通过这种招摇 UI,我使用户能够上传 CSV 文件以进行进一步的数据处理。
我有以下 swagger
json:
{
"swagger": "2.0",
"basePath": "/",
"paths": {
"/upload_profile/csv": {
"post": {
"responses": {
"200": {
"description": "Profile uploaded"
},
"400": {
"description": "Validation Error"
},
"401": {
"description": "Not authorized"
}
},
"operationId": "Get uploaded profiles from user",
"parameters": [
{
"name": "csv_file",
"in": "formData",
"type": "file",
"required": true,
"description": "CSV file"
}
],
"consumes": [
"multipart/form-data"
],
"tags": [
"upload_profile"
]
}
}
},
"info": {
"title": "Upload Profile",
"version": "0.0.1"
},
"produces": [
"application/json"
],
"consumes": [
"application/json"
],
"tags": [
{
"name": "upload_profile",
"description": "Uploading User Profiles"
}
],
"responses": {
"ParseError": {
"description": "When a mask can't be parsed"
},
"MaskError": {
"description": "When any error occurs on mask"
}
}
}
当我转到 API 网关 --> 文档 --> 导入文档并粘贴 json 时,出现以下错误:
如何解决以下问题?如果 API Gateway
不支持 formData
,是否有替代方案来托管 swagger UI?
问题是 AWS API 网关需要 swagger/OpenAPI 版本 3,而您的文件是版本 2。如果您只想为 [=16] 托管 swagger UI =] 目的,看看 SwaggerHub https://swagger.io/tools/swaggerhub/.
但是,如果您真的必须使用 AWS API 网关,那么您需要获取 OpenAPI-3 格式的规范。由于 API 相当小,我建议您自己准备 OpenAPI-3 规范(而不是生成它)并通过 swagger UI.
在本地进行测试
我正在使用 flask-restx
构建带有 swagger 的应用程序 UI,我试图将此 swagger 文件作为文档部分上传到 AWS API Gateway
。通过这种招摇 UI,我使用户能够上传 CSV 文件以进行进一步的数据处理。
我有以下 swagger
json:
{
"swagger": "2.0",
"basePath": "/",
"paths": {
"/upload_profile/csv": {
"post": {
"responses": {
"200": {
"description": "Profile uploaded"
},
"400": {
"description": "Validation Error"
},
"401": {
"description": "Not authorized"
}
},
"operationId": "Get uploaded profiles from user",
"parameters": [
{
"name": "csv_file",
"in": "formData",
"type": "file",
"required": true,
"description": "CSV file"
}
],
"consumes": [
"multipart/form-data"
],
"tags": [
"upload_profile"
]
}
}
},
"info": {
"title": "Upload Profile",
"version": "0.0.1"
},
"produces": [
"application/json"
],
"consumes": [
"application/json"
],
"tags": [
{
"name": "upload_profile",
"description": "Uploading User Profiles"
}
],
"responses": {
"ParseError": {
"description": "When a mask can't be parsed"
},
"MaskError": {
"description": "When any error occurs on mask"
}
}
}
当我转到 API 网关 --> 文档 --> 导入文档并粘贴 json 时,出现以下错误:
如何解决以下问题?如果 API Gateway
不支持 formData
,是否有替代方案来托管 swagger UI?
问题是 AWS API 网关需要 swagger/OpenAPI 版本 3,而您的文件是版本 2。如果您只想为 [=16] 托管 swagger UI =] 目的,看看 SwaggerHub https://swagger.io/tools/swaggerhub/.
但是,如果您真的必须使用 AWS API 网关,那么您需要获取 OpenAPI-3 格式的规范。由于 API 相当小,我建议您自己准备 OpenAPI-3 规范(而不是生成它)并通过 swagger UI.
在本地进行测试