我正在使用Swagger和AWS API Gateway为我的项目生成API,
我做了什么:
- 在Swagger中:我定义了路径:
paths:
/v1/shop/list/{petID}:
...
/v2/shop/list/{petID}:
...
我跳过了basePath,并在Swagger编辑器中双重检查了yaml文件 . 一切都很好,并纠正 . 我也在本地调用API,它工作正常 .
- 在AWS API Gateway中,我创建了一个API,并使用Swagger Hub上传Swagger yaml . 然后我将API部署到舞台上,让我们说"dev"
问题:我打开AWS API Gateway生成的API URL
https://xxxxxxxxxxx.execute-api.eu-west-1.amazonaws.com/dev/v1/shop/list/1
https://xxxxxxxxxxx.execute-api.eu-west-1.amazonaws.com/dev/v2/shop/list/1
我收到了错误:
不能GET / v1 / v1 / shop / list / 1不能GET / v1 / v2 / shop / list / 1
为什么将“/ v1 /”添加到路径中?
有人遇到过这个问题,请帮帮我 .
1 回答
将Swagger yaml上传到AWS API Gateway时Swagger Hub出现的问题 . 它会使用“/ v1 / v1”自动生成错误的 endpoints . 我的解决方案是使用更正的 endpoints 更新 endpoints .