1

Je suis vraiment confus sur la façon de configurer les statuts de l'email Amazon SES; rebonds, plaintes et/ou livraisons avec node.js être renvoyé avec SNS. J'ai essayé après leur DocumentationAWS SES envoie des rebonds, des plaintes et/ou des livraisons en utilisant la notification SNS dans node.js

  1. j'ai créé un sujet dans
  2. SNS
  3. Je suis allé à l'e-mail de l'expéditeur, dans l'onglet de notification pour transmettre les plaintes et/NPAI livraisons à ce sujet créé.
  4. Alors j'ai essayé de souscrire à ce sujet dans Node.js

Donc, première question est ici que je ne sais pas quoi mettre comme EndPoint dans la pièce de code suivante (je fini par mettre le point final de la région SNS j'utilisais):

let AWS = require('aws-sdk'); 
    AWS.config.loadFromPath('config.json'); 

    const sns:AWS.SNS = new AWS.SNS(); 
     //subscribe to particular topic 
     let params:any = { 
      Protocol: 'https', /* required */ //http , https ,application 
      TopicArn: 'arn:aws:sns:us-west-2:528353458268:email-notification', /* required */ // topic you want to subscribe 
      Endpoint: 'https://sns.us-west-2.amazonaws.com' // the endpoint that you want to receive notifications. 
     }; 

     sns.subscribe(params, function(err:any, data:any) { 
      if (err){ 
       console.log(err); 
      } 
      else{ 
       console.log(data); 
      } 
     }); 

de là, j'ai reçu cet objet:

{ ResponseMetadata: { RequestId: 'badd5d44-6ac5-55a0-92d6-0c8d7c6ad14c' }, 
    SubscriptionArn: 'pending confirmation' } 

Donc je me demandais si je fais quelque chose de mal ici et comment puis-je confirmer le subscription au sujet? Je pensais que ce serait automatique ...

+1

Le 'Endpoint' il une URL pointant vers votre serveur qui recevra la notification. Par exemple, vous pouvez créer un point de terminaison appelé 'http://yoursite.com/bounce' et le donner à SNS. Chaque fois qu'il y a un rebond, votre serveur reçoit un appel à cet endroit. Vous pouvez définir le type de requête HTTP envoyé par SNS. – mkhanoyan

+0

Voir la réponse à http://stackoverflow.com/questions/36958160/how-to-confirm-subscribe-and-get-sns-notifications-at-a-http-endpoint –

+0

Votre 'Endpoint' doit exister en tant que exposé Expressjs route (en supposant Express depuis que vous mentionnez Node). Vous devez gérer la demande entrante 'Type = SubscriptionConfirmation' une fois que vous avez configuré l'abonnement dans la console SNS. Vous capturez ensuite le SubscribeURL envoyé dans cette demande et accédez à l'URL fournie par cette clé. Avant de suivre ce conseil, je vous recommande de jeter un coup d'œil à ma réponse, ce n'est que l'une des nombreuses étapes pour vous rendre où vous voulez être. –

Répondre