nodemailer sur le service mobile azure ne fonctionne pas

J’essaie d’envoyer un courrier avec nodemailer. Le script fonctionne sur la machine locale mais je ne peux pas inclure nodemailer dans le service mobile azure. Ajout de ‘nodemailer’: “*” dans mon package.json mais je ne parviens toujours pas à l’inclure.

Les journaux dit

TypeError: Impossible de lire la propriété ‘prototype’ de non définie

J’ai commenté la logique complète mais l’erreur était toujours là. Enfin commenté var nodemailer = require (‘nodemailer’);

et l’erreur avait disparu.

Pour résoudre ce problème, vous devez installer une version plus ancienne de nodemailer afin qu’il puisse fonctionner sur le service mobile Azure. J’ai ajouté la version 0.7.1 de nodemailer dans le package.json pour Azure, puis j’ai apporté les modifications de code nécessaires et cela a fonctionné pour moi.

Les modifications de code que vous devez faire pour prendre en charge la version 0.7.1 sont très mineures. Voici le code complet de la documentation:

 var nodemailer = require("nodemailer"); // create reusable transport method (opens pool of SMTP connections) var smtpTransport = nodemailer.createTransport("SMTP",{ service: "Gmail", auth: { user: "[email protected]", pass: "userpass" } }); // setup e-mail data with unicode symbols var mailOptions = { from: "Fred Foo ✔ ", // sender address to: "[email protected], [email protected]", // list of receivers subject: "Hello ✔", // Subject line text: "Hello world ✔", // plaintext body html: "Hello world ✔" // html body } // send mail with defined transport object smtpTransport.sendMail(mailOptions, function(error, response){ if(error){ console.log(error); }else{ console.log("Message sent: " + response.message); } // if you don't want to use this transport object anymore, uncomment following line //smtpTransport.close(); // shut down the connection pool, no more messages }); 

Documentation Nodemailer 0.7.1