Предположим, вы используете AWS Lambda. Поскольку вы используете шаблон async
/ await
, ответ http в конечном итоге будет возвращен async (event) => {}
. В вашем случае это ничего. Вы позвонили putItem
, но не дождались. async (event) => {}
сразу ничего не возвращайте. Поскольку функция вернулась, ваш putItem
вызов не имеет шансов для обратного вызова.
Вы должны преобразовать вызов putItem
в promise
и await
для него. Затем обработайте результат и верните http-ответ.
const AWS = require('aws-sdk');
const dynamodb = new AWS.DynamoDB({apiVersion: '2012-08-10'});
exports.handler = async (event) => {
var note = {};
note.noteid = new Date().getTime();
note.content = event.queryStringParameters["content"];
var res = {};
const response = {
statusCode: 200,
body: JSON.stringify(note),
};
var obj = {
'TableName':'notes',
'Item': {
'note_id': {
S: '2'
},
'name': {
S: 'content'
}
},
'ReturnConsumedCapacity': "TOTAL"
};
try
{
var result = await dynamodb.putItem(obj).promise();
//Handle your result here!
}
catch(err)
{
console.log(err);
}
return response;
};