我正试图通过lambda发送一个publish-sns命令,但它不会发送



过去几天我一直在尝试发布sns,但无论我编写什么代码,我都无法发送。请注意,我不是一个程序员,我这样做只是为了好玩。

我已经设置了IAM策略和规则如下,并使用策略模拟器运行它,它运行良好。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "sns:Publish",
            "Resource": "arn:aws:sns:us-east-1:*******:CallBell"
        }
    ]
}

我在代码的开头有这个。

var AWS = require("aws-sdk");
var sns = new AWS.SNS();

我的功能意图中没有这部分代码(这是alexa的技能)

console.log("Loading function");
sns.publish({
Message: 'Test', 
Subject: 'Test SNS From Lambda',
TopicArn: 'arn:aws:sns:us-east-1:*******:CallBell'
});
console.log("Message Sent");

这让我抓狂,需要帮助,我检查了我的日志、加载功能和发送的消息,它没有给出任何错误,但我没有收到我的消息。请帮忙!!

如果您在VPC中设置lambda,则它不会路由您的SNS请求。请在删除VPC后重试。如果你真的需要一个专有网络,你可以在你的专有网络中添加一个NAT服务,让你的lambda可以上网,如下所述。

相关内容

  • 没有找到相关文章