相关疑难解决方法(0)

如何使用AWS JavaScript SDK(dynamoDB)处理UnprocessedItems?

我正在尝试使用AWS Lambda函数来处理来自SendGrid的事件.据我了解,该事件将是一个包含可变数量的JSON对象的数组,每个对象代表一个给定的事件.我想使用batchWriteItem将这些事件写入DynamoDB并循环该过程,直到我没有返回任何UnprocessedItems.但是,我陷入了无限循环.这是我现在的代码:

console.log('Loading function');

var aws = require('aws-sdk');
var dynamo = new aws.DynamoDB();
params = {};

exports.handler = function(sg_event, context) {

    var items = [];
    for(var i = 0; i < sg_event.length; i++) {
        var obj = sg_event[i];
        var request = {
            PutRequest: {
                Item: {
                    email: { S: obj.email },
                    timestamp: { S: obj.timestamp.toString() },
                    sg_message_id: { S: obj.sg_message_id },
                    event: { S: obj.event }
                }
            }
        };
        items.push(request);
    }

    params = {
        RequestItems: {
            sendgrid_response: items
        }
    } …
Run Code Online (Sandbox Code Playgroud)

javascript lambda amazon-web-services node.js amazon-dynamodb

7
推荐指数
3
解决办法
4458
查看次数