API 网关和 Swagger UI
API Gateway and Swagger UI
我目前在我们的 API 网关中有一个包含多个资源的 API,我正在为此开发一个 Swagger UI 页面。
我自己写了很多 swagger ui 定义,虽然我知道有导出功能 - 它似乎还没有 100% 准备好。
当使用 swagger 中的 Try it out
按钮时,如果我返回 200,这将得到完美处理并且结果显示如预期。我正在尝试获取要显示的错误代码,这就是我卡住的地方。
在 API 网关中,我在我的 Method response
中创建了一个 401,包括一些允许的 headers,这在我的 Integration Response
中用于 HTTP status regex
of Unauthorized.*
- 此处的内容刚刚通过。
我的 swagger UI 定义响应如下所示(特别是对于 401):
"401": {
"description": "Unauthorized",
"headers": {
"Access-Control-Allow-Origin": {
"type": "string"
}
}
},
这只是期待一个字符串响应。我的“产品”拥有一切所需,以防万一;
"produces": ["application/json",
"text/json",
"application/xml",
"text/xml"],
检查员的结果是正确的-
然而我的招摇仍然产生了这个:
我尝试了很多方法,包括将 object 分配给响应类型,将我的正则表达式更改为 4\d{2} 以捕获任何 400 错误,更新定义生成 -都没有运气。
让我知道是否需要任何其他信息来提供帮助。
我假设您使用的是自定义授权方或 Cognito 授权方,这就是产生 401 的原因?
不幸的是,有一个已知的限制,其中错误方法(例如来自授权方的 401 或 403)将不包含已配置的 header 映射。
我目前在我们的 API 网关中有一个包含多个资源的 API,我正在为此开发一个 Swagger UI 页面。
我自己写了很多 swagger ui 定义,虽然我知道有导出功能 - 它似乎还没有 100% 准备好。
当使用 swagger 中的 Try it out
按钮时,如果我返回 200,这将得到完美处理并且结果显示如预期。我正在尝试获取要显示的错误代码,这就是我卡住的地方。
在 API 网关中,我在我的 Method response
中创建了一个 401,包括一些允许的 headers,这在我的 Integration Response
中用于 HTTP status regex
of Unauthorized.*
- 此处的内容刚刚通过。
我的 swagger UI 定义响应如下所示(特别是对于 401):
"401": {
"description": "Unauthorized",
"headers": {
"Access-Control-Allow-Origin": {
"type": "string"
}
}
},
这只是期待一个字符串响应。我的“产品”拥有一切所需,以防万一;
"produces": ["application/json",
"text/json",
"application/xml",
"text/xml"],
检查员的结果是正确的-
然而我的招摇仍然产生了这个:
我尝试了很多方法,包括将 object 分配给响应类型,将我的正则表达式更改为 4\d{2} 以捕获任何 400 错误,更新定义生成 -都没有运气。
让我知道是否需要任何其他信息来提供帮助。
我假设您使用的是自定义授权方或 Cognito 授权方,这就是产生 401 的原因?
不幸的是,有一个已知的限制,其中错误方法(例如来自授权方的 401 或 403)将不包含已配置的 header 映射。