我使用 lambda 制作了一个待办事项应用程序。我使用无服务器框架进行部署。我提出了一个帖子请求,用户可以在其中创建一个待办事项列表。为了测试,我正在使用邮递员。对于我的 Lambda 函数,我使用的是异步函数。我可以在 Dynamo db 中发出发布请求和我的项目存储,但我得到了响应 Internal server error
。我的目标是向我的邮递员展示我提出的邮寄请求类型。
这是我的代码:
'use strict'
const AWS = require('aws-sdk');
const uuid = require('uuid');
const dynamoDb = new AWS.DynamoDB.DocumentClient();
module.exports.createTodo = async (event) => {
const datetime = new Date().toISOString();
const data = JSON.parse(event.body);
const params = {
TableName: 'todos',
Item: {
id: uuid.v1(),
task: data.task,
done: false,
createdAt: datetime,
updatedAt: datetime
}
};
try {
let data = await dynamoDb.put(params).promise();
console.log(data);
return JSON.stringify(data); // this throw me internal server error.
} catch (error) {
console.log(error);
}
};
答案 0 :(得分:1)
由于是通过API Gateway调用Lambda函数,所以需要将响应转换成如下结构-
return {
statusCode: 200,
body: JSON.stringify(data),
// headers: {'Content-Type': 'application/json'}, // Uncomment if needed by your client
}