繁体   English   中英

如何在lambda function中使用动态资源URL

[英]How to use dynamic resource URL in lambda function

我已经从 AWS SAM 模板创建了一个 SQS。yaml 它将向我返回 lambda function 向其发送消息所需的 SQS 路径。 现在由于 SQS 路径将在 CFT 堆栈创建期间生成,我如何预先使用它或者有没有办法使用动态 SQS 路径?

无法弄清楚请帮助。

正如其他人指出的那样,添加更多细节将有助于获得更好的答案。 尽管如此,假设您正在使用以下模板创建 SQS,

  myQueueLogicalId:
    Type: AWS::SQS::Queue
    Properties: 
      QueueName: myQueue
      VisibilityTimeout: 4200
      MessageRetentionPeriod: 1209600

您可以获得队列名称(或者如果您想要完整的 url 或 ARN 更改 sqs cloudformation 文档中给出的属性)到您的 lambda function 通过将其传递到环境变量中,如下所示:

  myFunctionLogicalId:
    Type: AWS::Serverless::Function
    Properties:
      Environment:
        Variables:
          MY_SQS: !GetAtt 
                      - myQueueLogicalId
                      - QueueName
      FunctionName: myFunction
      Handler: src/handlers/handler
      Runtime: nodejs14.x
      Timeout: 650
      MemorySize: 4096

如此处所述,可以在您的代码中检索参数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM