0

AWS API Gateway、Lambda、DynamoDBについてはかなり新しくなっていますが、少し研究して、DynamoDBテーブルをスキャンする単純なラムダ関数を構築する方法を考えました。Lambda関数内のDynamoDBスキャンの応答にデータを表示する方法は?

私はテーブルをスキャンしてコールバックで、data変数内の結果にアクセスできると思います。

今、私の機能はちょうどSucceededメッセージで完了しますが、私の人生は実際にレスポンスとしてスキャンしたデータをどのように表示するのか理解できません。どんな助けでも大歓迎です。

var AWS = require('aws-sdk'); 
var dynamodb = new AWS.DynamoDB({apiVersion: '2012-08-10'}); 

exports.handler = function(event, context) { 
    var tableName = "MyTableName"; 
    dynamodb.scan({ 
     TableName : tableName 
    }, function(err, data) { 
     if (err) { 
      context.done('error','reading dynamodb failed: '+err); 
     } 
     context.succeed('Success'); 
    }); 
}; 
+0

データをストリーミングする方法はありますか? JSONとしてデータを返すことができます。コールバックの例(null、jsonString); – notionquest

+0

@notionquestはい、JSONデータを返します。そのコードが関数内のどこに配置されるのかを拡張できますか? –

答えて

1

すぐに文字列'Success'が返されます。代わりに、あなたが実際に戻したいものを返してください。例:context.succeed(null, data);

+0

それはありました、ありがとうございます。私はすでにそれを試したと思っていました。「プロセスが要求を完了する前に終了しました。」というエラーが出ましたが、今回はうまくいきました。 –

0

サンプルコードhereを参照してください。

exports.handler = function(event, context, callback) { 
    var tableName = "MyTableName"; 
    dynamodb.scan({ 
     TableName : tableName 
    }, function(err, data) { 
     if (err) { 
      context.done('error','reading dynamodb failed: '+err); 
     }    
     callback (null, data); 
    }); 
}; 
関連する問題