从另一个 lambda 函数传递值并触发 lambda 函数

Pass value and trigger lambda Function from another lambda Function

我有一堆 Lambda 函数,它们都采用相同的值并以不同的方式处理该值。我想做的不是将值发送到每个 lambda 并使其成为 Zapier 中的一项额外任务。我想将值发送给一个 lambda,然后一个函数将值发送给所有其他 Lambda 函数进行处理。因此减少了 Zapier 必须执行的所有任务量。

实际上你可以做的是让 Lambda 函数之一创建一条 AWS SNS 消息;它将处理您 post 向它发送的内容,并向正在侦听 AWS SNS

的其他 Lambda 函数发出消息

在您的 Lambda 1(post 消息的函数)内:

var sns = new AWS.SNS({
  region: 'us-east-1'
});

exports.handler = function(event, context, callback) {
  var params = {
    Message: <YOUR_MESSAGE>, /* required */
    Subject: 'STRING_VALUE',
    TopicArn: <SNS_TOPIC_ARN>
  };
  sns.publish(params, (err, data) => {
    if(err) console.log(err, err.stack);
  });
}

在另一个正在侦听 AWS SNS 的 Lambda 函数中:

exports.handler = function(event, context, callback) {
  var message = event.Records[0].Sns.Message; /* Here is your message */
}

像这样使用它的最大好处是您可以将所有消息放入一个队列中。