2016-12-05 67 views
2

我已使用以下代码段来处理AWS SNS订阅和通知消息。配置的http端点正在接收确认消息,但我无法通过代码进行确认。但是,通过访问记录控制台消息中的“订阅URL”,可以手动确认它。无法确认在NodeJS中的http端点的aws Sns订阅

我已经配置在AWS和SNS部分如下所述:

var aws = require('aws-sdk'); 
aws.config.loadFromPath(__dirname + '/awsConfig.json'); 
var sns = new aws.SNS(); 

这是下面的函数我使用用于处理HTTP端点的消息。

function handleIncomingMessage(msgType, msgData) { 
    if (msgType === 'SubscriptionConfirmation') { 
     //confirm the subscription. 
     console.log("Subscription Confirmation Message--->"+msgData); 
     sns.confirmSubscription({ 
      TopicArn: msgData.TopicArn 
     }, onAwsResponse); 
    } else if (msgType === 'Notification') { 
     console.log("Notification has arrived"); 
    } else { 
     console.log('Unexpected message type ' + msgType); 
    } 
} 

这里的sns.confirmSubscription不起作用,有没有解决方案/为此工作?

回答

1

here所述,您还需要通过confirmSubscription参数中的Token字段。

+0

强制传递令牌还是可以跳过它? –

+0

这是强制性的。 – alexoakley1