AWS :: ApiGateway ::方法在每个部署中均被删除

时间:2020-09-21 15:38:07

标签: amazon-web-services amazon-cloudformation aws-codepipeline

我有一个带有cloudformation模板的代码管道。 我正在创建一个AWS :: ApiGateway :: Resource和AWS :: ApiGateway ::方法来访问S3存储桶。 第一次使用API​​创建方法。但是当我将更改推送到仓库时 并重新部署删除方法。

我不能,这就是原因。有人有任何线索!谢谢!

QrResource:
    Type: "AWS::ApiGateway::Resource"
    Properties:
      ParentId:
        Fn::GetAtt:
          - "myApi"
          - "RootResourceId"
      RestApiId: !Ref myApi
      PathPart: "qr"
  QrItemResource:
    Type: "AWS::ApiGateway::Resource"
    Properties:
      ParentId: !Ref QrResource
      RestApiId: !Ref myApi
      PathPart: "{item}"
  Qr:
    Type: "AWS::ApiGateway::Method"
    Properties:
      HttpMethod: GET
      ApiKeyRequired: false
      AuthorizationType: NONE
      RequestParameters:
        method.request.header.Content-Disposition: false
        method.request.header.Content-Type: false
        method.request.header.Accept: false
        method.request.path.item: true
      MethodResponses:
        - StatusCode: 200
          ResponseParameters:
            method.response.header.Content-Type: integration.response.header.Content-Type
            method.response.header.Content-Disposition: integration.response.header.Content-Disposition
            method.response.header.Accept-Ranges: integration.response.header.Accept-Ranges
          ResponseModels:
            "application/json": EmptyModel
        - StatusCode: 403
          ResponseModels:
            "application/json": ErrorModel
      RestApiId: !Ref myApi
      ResourceId: !Ref QrItemResource
      Integration:
        Type: AWS
        Credentials: !Ref RoleApi
        IntegrationHttpMethod: GET
        PassthroughBehavior: WHEN_NO_MATCH
        IntegrationResponses:
          - StatusCode: 200
            SelectionPattern: 200
            ContentHandling: CONVERT_TO_BINARY
            ResponseParameters:
              method.response.header.Content-Type: integration.response.header.Content-Type
              method.response.header.Accept-Ranges: "'bytes'"
              method.response.header.Content-Disposition: "'inline'"
            ResponseTemplates:
              "application/json": ""
        RequestParameters:
          integration.request.header.Content-Disposition: method.request.header.Content-Disposition
          integration.request.header.Content-Type: method.request.header.Content-Type
          integration.request.header.Accept: method.request.header.Accept
          integration.request.path.item: method.request.path.item
        Uri: arn:aws:apigateway:us-east-1:s3:path/s3-bucket/{item}

0 个答案:

没有答案
相关问题