如何使用CF在API Gateway的根目录/文件夹下创建方法?因此,例如,我有一个类似于以下内容的网关:
/ 选件 开机自检
但是,当尝试使用CF时,我得到: 资源的路径部分仅允许在开头和结尾处使用a-zA-Z0-9 ._-和花括号。所以我的PathPart是令人讨厌的行。
ApiGate:
Type: AWS::ApiGateway::Resource
Properties:
ParentId: !GetAtt
- ApiGateApi
- RootResourceId
PathPart: '{/}'
RestApiId: !Ref ApiGateApi
我可以将PathPart更改为其他内容,但随后它会将它创建为/子对象,这是我不想要的。
答案 0 :(得分:0)
将以下内容添加到我的AWS::ApiGateway::Method
后,它可以正常工作了。
MyMethodOPTIONS:
Type: 'AWS::ApiGateway::Method'
Properties:
ResourceId: !GetAtt MyRestApi.RootResourceId
答案 1 :(得分:0)
这解决了我的问题,就我而言,我需要两种方法:
1.会回应对root的要求,例如https://<api-url>/prod
或https://<api-url>/prod/
。这将使用API网关的RootResourceId:
ResourceId:!GetAtt myApiGateway.RootResourceId
https://<api-url>/prod/
下设置的任何请求。可能是petstore
,或者如果使用{proxy+}
,则后端工作负载将尝试解决请求。它将引用模板中定义的资源类型:ResourceId:!Ref myResource