Tanımlı nodemailer kullanarak node.js sunucusundan bir e-posta göndermeye çalışırken, aşağıdaki hatayı alıyorum:NodeMailer yok Alıcılar
ERROR: Send Error: No recipients defined
Kodum aşağıdaki gibidir:
istemci tarafı:
var mailData = {
from: "[email protected]",
to: "[email protected]",
subject: "test",
text: "test email"
};
$.ajax({
type: 'POST',
data: mailData,
contentType: 'application/json',
url: 'http://localhost:8080/sendEmail',
success: function(mailData) {
console.log('successfully posted to server.');
}
});
sunucu tarafı:
var nodemailer = require('nodemailer');
app.post('/sendEmail', function(mailData) {
var transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: '[email protected]',
pass: 'mypassword'
},
});
transporter.sendMail(mailData, function(error, info) {
if (error) {
console.log(error);
return;
}
console.log('Message sent');
transporter.close();
});
});
Bu, nodemailer belgelerine uygundur ve SMTP el sıkışması her zaman başarılı bir şekilde tamamlanır, bu yüzden bunun taşıyıcı nesne ile ilgili bir sorun olmadığını biliyorum.
sunucu tarafında gibi nasıl 'mailData' var göz kontrol ettin sadece' sendMail' yöntemini çalıştırmadan önce: Yani o anlamda POST params almak HapiJS Örneğin
? İstemci tarafında olduğu gibi mi? Her şey iyi görünüyor ve "to" alanı boş olduğunda bu tür bir hata atılıyor. – kkochanski@kkochanski haklısınız. İstemci tarafında ajax ile ilgili bir sorun var, ben konsolide serverde konsol.log (mailData.to) yaptığım gibi undefined olsun, bu yüzden konu aslında ajax çağrısı ve nodemailer değil. –
Cevapladım, umarım yardımcı olur! – kkochanski