如何在lambda中扫描dynamoDB



所以我有一个包含 10 个项目的表格,每个项目大约有 5 个键(名称、经验、级别等(。现在,我想扫描该表,将每个项目作为对象获取并将其添加到数组中,然后 JSON 字符串化该数组并返回它。

我只需要扫描代码和获取所有项目并将其放入数组中的帮助。

这是我目前的代码。

var dynamodb = new AWS.DynamoDB.DocumentClient(); 
exports.handler = function(event, context, callback) 
{
    var returnArray = {
        "cards": {}
    }
    getCards();
    function getCards() {//Not sure how to write this function
        var params = {
            TableName : "toBeApprovedTable",
            Key: {//not sure what to put here, since I want all items, and not searching through keys.
            },
        };
        dynamodb.scan(params,function(err,data)
        {
            if(err)
            {
                console.log("error in scanning");
            }
            else
            {
                console.log("scanning success!");
                //Not sure what to do here.
            }
        });
    }
};

我在废弃Google + AWS文档后想通了。

下面介绍如何扫描表中的所有元素。我的回报是一张地图,其中包含一系列元素。每个元素都是我的对象的映射。

exports.handler = function(event, context, callback) 
{
    var returnArray = {
        "cardsToBeApproved":[]
    };
    getCards();
    function getCards() {//Not sure how to write this function
        var params = {
            TableName : "toBeApprovedTable"
        };
        dynamodb.scan(params,onScan);
    }
    function onScan(err,data)
    {
        if(err)
        {
            console.log("unable to scan table");
        }
        else
        {
            console.log("scan succeeded");
            data.Items.forEach(function(card)
            {
                console.log("my card name is " + card.name);
                var cardStringified = JSON.stringify(card);
                returnArray.cards.push(card);
            });
            callback(null,JSON.stringify(returnArray));
        }
    }
};

最新更新