Articles of amazon sns

通过HTTP确认SNS订阅时出现AuthorizationError

我正在写一个简单的SNS客户端,意在自订一个SNS主题,然后监听通知。 我可以成功提交sns.subscribe请求,但是当我从AWS获取SubscriptionConfirmation POST消息并尝试使用sns.confirmSubscription响应sns.confirmSubscription我得到一个AuthorizationError : [AuthorizationError: User: arn:aws:iam::xxx:user/mv-user is not authorized to perform: SNS:ConfirmSubscription on resource: arn:aws:sns:us-east-1:xxx:*] 如果我在服务器的GET查询中使用完全相同的Token和TopicArn,订阅确认工作正常,没有身份validation。 任何想法,为什么它不工作? 我的SNS主题是广泛开放的发布/订阅权限设置为“每个人”。 作为参考,我的代码是这样的: var params = { TopicArn: topicArn, // eg arn:aws:sns:us-east-1:xxx:yyy Token: token // long token extracted from POST body }; sns.confirmSubscription(params, function (err, data) { if (err) { // BOOOM – keep getting here with AuthorizationError […]

SNS推送通知与图像使用Node.js?

我使用的是Amazon和iOS的Amazon SNS Mobile Push Notifications。 只有发送带有文本和图标的推送通知,我非常成功。 现在我试图发送图像底部的通知。 我search每一个地方,但无法find一个完美的文档工作。 任何build议,请。 我用npm安装了这个包,我用这个来发送推送通知。 请参考这个链接。 https://www.npmjs.com/package/sns-mobile AWS_SNS_App.getUsers(function (err, allDevices) { if (err) { console.log(err, err.stack); // an error occurred } else { if (allDevices.length != 0) { var totalDevices = 0; for (var i = 0; i < allDevices.length; i++) { totalDevices = totalDevices + 1; AWS_SNS_App.sendMessage(allDevices[i].EndpointArn, message, function […]

获取AWS SMS的交付状态

我通过节点SDK从AWS发送短信。 短信发送情况良好,我正在尝试收到发送信息。 显然不是那么容易,而且必须设置SNS才能将日志发送到Cloudwatch,并parsingCloudWatch以获取查找MessageId的传递信息: https ://stackoverflow.com/a/40327061/2054629 如果我通过SNSnetworking界面发送短信,日志中会看到cloudwatch中的日志,而不是通过节点SDK发送日志。 在从节点发送消息之前,我无法获取有关如何设置消息的信息。 理想情况下,我想达到这样的东西: const sendSMS = async (message, number) => { // send the SMS // wait to get delivery info // resolve with delivery info, or reject if failed } 目前我有: import AWS from 'aws-sdk'; AWS.config.update({ accessKeyId: accessKey, secretAccessKey: secretKey, region: 'us-east-1', }); const sns = new AWS.SNS(); const […]

如何将sns发布到特定的端点?

我有一个问题,发布SNS到一个特定的端点。 我的代码: var AWS = require('aws-sdk'); AWS.config.loadFromPath('/web/config.json'); var sns = new AWS.SNS(); sns.publish({ // TopicArn:'arn:aws:sns:us-west-2:302467918846:MyTestTopik', TargetArn:'arn:aws:sns:us-west-2:302467918846:MyTestTopik:613ee49c-d4dc-4354-a7e6-c1d9d8277c56', Message:"Success!!! ", Subject: "TestSNS"}, function(err,data){ if (err){ console.log("Error sending a message "+err); }else{ console.log("Sent message: "+data.MessageId); } }); 当我使用TopicArn时,一切都很好。 但是,当我尝试发送通知到特定的端点时,我会收到错误: 发送消息时出错InvalidParameter:无效的参数:主题名称 我不知道这是什么样的参数,从哪里。