0

我对 AWS API Gateway 比较陌生。我正在尝试在 API 网关的 OpenAPI 定义中使用OpenAPI 组件

我正在尝试为集成响应构建可重用的响应,如下所示。

这是 400 响应的可重用组件(连同它的映射模板):

    components:
      responses:
        BAD_REQUEST:
          statusCode: "400"
          responseTemplates:
            application/json: "#set($inputRoot = $input.path('$'))\n{ \n  \"message\"\
                : \"Invalid Request Body\"\n}"

我正在尝试在 API 网关集成中的响应下使用它,如下所示:

          x-amazon-apigateway-integration:
            <API_GATEWAY_CONFIG_GOES_HERE>
            responses:
              .*"BadRequest".*:
                $ref: '#/components/responses/BAD_REQUEST'

当我部署整个 CloudFormation 堆栈时,我收到了该错误并且无法部署堆栈:

无法将集成响应放在路径“/test_resource”的资源的“POST”上:集成响应状态代码必须为非空

有任何想法吗?

4

1 回答 1

0

我花了几天时间寻找这个,唯一可能的方法是 YAML 锚:您可以检查以下代码:

此外,这种来自 AWS 的官方方式目前似乎不起作用!

于 2020-10-03T03:09:26.137 回答