请原谅我,但我对 JS 承诺不熟悉。我认为我需要使用一个与 AWS 服务交互,该服务从 DynamoDB 写入和提取数据。我有一个由无服务器 npm 插件运行的 JavaScript 应用程序,它将导出的函数定义为端点。在 promise 完成后的这些端点中,我需要将数据冒泡备份到端点以将其公开为 JSON 主体。请参阅下面的代码。
exports.getBlog = async (event) => {
return getBlogPost(event).then((data) => {
console.log("worked", data);
var response = {
statusCode: 200,
body: JSON.stringify(data)
};
return response;
})
.catch((error) => {
console.log("didn't work");
var response = {
statusCode: 400,
body: JSON.stringify(error.toString())
};
return response;
});
}
让我觉得不正确的是我必须创建 avar response并返回它,然后在exports.getBlog. 这是正确的吗?它使 JSON 打印正确,但是从在线阅读教程中对这是否是好的做法感到困惑?
如果不是,您将如何从 Promise 返回数据并将其公开为 JSON 结果?
在此示例中,exports.getBlog无服务器框架将其引用为端点,如下所示:-
functions:
get-blog:
handler: api/blog.getBlog
events:
- http:
path: api/v1/blog
method: GET
cors: true
莫回无
翻翻过去那场雪
相关分类