[英]Post JSON in DynamoDB via Lambda
在Lambda函數和AWS上的API網關的幫助下,我無法在DynamoDB表中存儲JSON文件。 我有以下代碼,當我按HTML站點上的按鈕時,這些代碼將被執行:
$('#submit').on('click', function(){
var example = {"number":"121212"};
$.ajax({
type: 'POST',
url: API_URL,
data: JSON.stringify(example),
contentType: "application/json",
success: function(data){
location.reload();
}
});
return false;
});
當按下時,網站會重新加載,因此我認為功能已成功執行。 但是我的問題是數據在lambda函數中沒有以正確的格式到達,因此無法正確執行。 在CloudWatch中簽入時,它顯示為{number:'121212'}而不是{“ number”:“ 121212”}。 知道如何在Lambda函數中確保值“到達”具有有效的JSON格式嗎?
這是我的Lambda函數:
exports.handler = function index(e, ctx, callback) {
var params = {
Item: { number: e.number },
TableName: 'collectionOfNumbers'
};
docCLient.put(params, function(err, data) {
if (err) {
callback(err, null);
} else {
callback(null, data);
}
});
}
如果我讀這個權利,e.number是JSON參數“數字”要傳遞的,如“121212”的價值。 我正在從docClient是引擎蓋下putItem使用的假設。
我覺得你的項目PARAM應該是這樣的:
Item: {"number": {N: e.number}}
請參閱AWS文檔的信息有關PutItem https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.