2017-06-09 25 views
0

自己編寫簡單lambda函數來掃描從dynamodb數據,但數據是越來越與錯誤消息標記和λ功能檢索到的顯示信息作爲執行失敗AWS lambda函數檢索dynamodb數據作爲錯誤消息

var AWS = require('aws-sdk'); 
    var DOC = require("dynamodb-doc"); 
    var dynamo = new DOC.DynamoDB(); 
    exports.handler = function (event, context, callback) { 

    var params = { 
     TableName: "Movies", 
     // ProjectionExpression: "#yr, Movie", 
     FilterExpression: "#yr = :thisyear", 
     ExpressionAttributeNames: { 
     "#yr": "year", 
    }, 
    ExpressionAttributeValues: { 
     ":thisyear" : 2009 
    }  
}; 

    dynamo.scan(params, function(err, data){ 
      if (err){ 
     callback("error occoured"); 
      } 
      else{ 
     callback(JSON.stringify(data.Items)); 
      }   
    }); 
    }; 

結果

{ 
    "errorMessage": "[{\"year\":2009,\"Movie\":\"Jab tak hai jaan\"}]" 
} 

回答

1

nodejs回調通常是錯誤優先的回調。這意味着第一個參數是錯誤消息,第二個參數是結果。所以當返回結果時,你需要通過null作爲第一個參數。 如:callback(null, JSON.stringify(data.Items));

請參閱this文章

+0

感謝您的幫助,它現在正 – Shan