我正在尝试设置 lambda 以接收 dynamo dB 流并将这些数据库更改发布到 sns 主题。我不确定如何使用 cdk 将消息从 lambda 发布到我的主题。有没有这样的例子?
答案 0 :(得分:0)
aws-cdk
用于创建 AWS 资源。换句话说,您使用它来创建 AWS Labmda、Dynamo DB 表、SNS 主题。然而,一旦这些资源被创建,人们就很少使用 CDK 对其进行操作。
为了向您的 Lambda 内的 SNS 发送消息,请参阅您选择的运行时的 AWS 开发工具包文档。例如,如果您决定在 node.js 中编写 lambda,您可以参考 AWS SDK for node.js。
这就是你的 lambda 代码的样子:
import { SNS } from "aws-sdk";
const sns = new SNS();
export const handler = async function(event){
const params = {
Message: JSON.stringify({ some: 'payload' }),
// it is easy to pass reference to the topic as environment variable using aws cdk
TopicArn: process.env.SOME_TOPIC_ARN
};
await sns.publish(params).promise()
}