就像在 Headers 中一样 . 我尝试使用 Cloud 形成将API网关方法与SQS集成 . 我缺少的是SQS的正确URI . 如果你们中的任何人已经这样做了,那么URI应该是什么样的?
我想出了类似的东西,但不知道在哪里放置SQS ARN
"arn:aws:apigateway:${AWS::Region}:sqs:action/SendMessage"
以下是该方法的完整配置:
PostMethod:
Type: "AWS::ApiGateway::Method"
Properties:
ApiKeyRequired: "true"
HttpMethod: "POST"
ResourceId: !Ref "SomeResource"
RestApiId: !Ref "SomeRestApi"
Integration:
IntegrationHttpMethod: "POST"
IntegrationResponses:
- StatusCode: 200
Type: "AWS"
Uri: "arn:aws:apigateway:${AWS::Region}:sqs:action/SendMessage"
如果你与lambda函数集成,这里是一个URI的例子:
arn:aws:apigateway:us-west-2:lambda:path//2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:function_name/invocations
-
2 回答
回答我自己的问题 . 以下是如何在API网关中将SQS集成为服务代理:
我终于在各种文档中找到了我的问题的所有答案 . RTFM我猜 .
编辑:
这里是RestApiRole的代码:
我很确定SQS角色和策略看起来应该更像这样(你似乎已经粘贴了lambda角色):