Amazon web services 将表单数据从swagger json导入AWS API网关时出错

Amazon web services 将表单数据从swagger json导入AWS API网关时出错,amazon-web-services,swagger,aws-api-gateway,swagger-ui,swagger-2.0,Amazon Web Services,Swagger,Aws Api Gateway,Swagger Ui,Swagger 2.0,我正在使用flask restx构建一个带有招摇过市用户界面的应用程序,并试图将此招摇过市文件作为AWS API Gateway中的文档部分上传。通过这个大摇大摆的用户界面,我使用户能够上传CSV文件以进行进一步的数据处理 我有以下swaggerjson: { "swagger": "2.0", "basePath": "/", "paths": { &qu

我正在使用
flask restx
构建一个带有招摇过市用户界面的应用程序,并试图将此招摇过市文件作为
AWS API Gateway
中的文档部分上传。通过这个大摇大摆的用户界面,我使用户能够上传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 Gateway需要swagger/OpenAPI版本3,而您的文件是版本2。如果您只想为文档/协作目的托管swagger UI,请查看swagger Hub


但是,如果您真的必须使用AWSAPI网关,那么您需要获得OpenAPI-3格式的规范。由于API相当小,我建议您自己准备OpenAPI-3规范(而不是生成规范),并通过swagger UI在本地对其进行测试。

问题在于AWS API Gateway需要swagger/OpenAPI版本3,而您的文件是版本2。如果您只想为文档/协作目的托管swagger UI,请查看swagger Hub


但是,如果您真的必须使用AWSAPI网关,那么您需要获得OpenAPI-3格式的规范。由于API相当小,我建议您自己准备OpenAPI-3规范(而不是生成规范),并通过swagger UI在本地进行测试。

Hey,我尝试使用swagger editor解决方案将swagger 2.0转换为OpenAPI 3.0。但是转换将
类型
从“文件”更改为“字符串”,并且由于
类型
转换为字符串,上载功能丢失。请检查,它说“文件使用类型:字符串模式,格式为:二进制或格式:base64,具体取决于文件内容的编码方式…”,因此类似于“类型:字符串”是的,谢谢。我会去看看的。嘿,我试着用swagger编辑器解决方案将swagger 2.0转换成OpenAPI 3.0。但是转换将
类型
从“文件”更改为“字符串”,并且由于
类型
转换为字符串,上载功能丢失。请检查,它说“文件使用类型:字符串模式,格式为:二进制或格式:base64,具体取决于文件内容的编码方式…”,因此类似于“类型:字符串”是的,谢谢。我去看看。