【问题标题】:How to detect PutItem operation in DynamoDB using lambda trigger?如何使用 lambda 触发器检测 DynamoDB 中的 PutItem 操作?
【发布时间】:2016-12-30 16:46:41
【问题描述】:

我在AWS Lambda 中有一个函数,它由AWS DynamoDB 中的操作触发。该函数包含此代码,假设使用AWS SNS 发送新的推送消息:

console.log('Loading function');

var AWS = require('aws-sdk');  
AWS.config.region = 'us-west-2';

exports.handler = function(event, context) {  
    console.log("\n\nLoading handler\n\n");
    var sns = new AWS.SNS();

    sns.publish({
        Message: 'Test publish to SNS from Lambda',
        TopicArn: 'TOPIC_ARN'
    }, function(err, data) {
        if (err) {
            console.log(err.stack);
            return;
        }
        console.log('push sent');
        console.log(data);
        context.done(null, 'Function Finished!');  
    });
};

只有在DynamoDB 表中发生PutItem 操作时,我如何才能触发此Lambda 代码?

此外,有没有一种方法可以让我将新添加的项目的属性放到表中并检查其中一个是否等于字符串?

This 是我在 AWS 开发者论坛上的问题。

【问题讨论】:

    标签: amazon-web-services amazon-dynamodb aws-lambda amazon-sns


    【解决方案1】:
    // Check if it is PutItem event
    if (record.eventName == "INSERT") {
        ...
        // Get item's id
        var id = record.dynamodb.Keys.Id.N;
        ...
    }
    

    【讨论】:

    • 请编辑更多信息。不建议使用纯代码和“试试这个”的答案,因为它们不包含可搜索的内容,也没有解释为什么有人应该“试试这个”。
    猜你喜欢
    • 2015-10-13
    • 1970-01-01
    • 2021-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-29
    • 1970-01-01
    相关资源
    最近更新 更多