Я пытаюсь реализовать контактную форму для моего сайта, используя Nodemailer и Gmail, но, к сожалению, что-то не так.Я не могу найти проблему.Ниже мой почтовый маршрут:
app.post('/form', cors(), (req, res, next) => {
let transporter = nodemailer.createTransport({
host: 'smtp.gmail.com',
port: 465,
secure: true,
auth: {
user: 'some.mail@gmail.com',
pass: 'password'
},
tls: {
rejectUnauthorized: false
}
});
const htmlEmail = `
<h3>Contact Details</h3>
<ul>
<li>Name: ${req.body.author}</li>
</ul>
<h3>Message:</h3>
<p>${req.body.body}</p>
`
let mailOptions = {
from: req.body.author,
to: 'some@mail.com',
replyTo: req.body.author,
subject: "Portfolio Website - Contact",
text: req.body.body,
html: htmlEmail
};
transporter.sendMail(mailOptions, (error, info) => {
if (error) {
console.log(error);
return res.json({err: error});
}
console.log('Message sent: %s', info.messageId);
res.redirect('form');
});
});
А вот моя HTML-форма:
<form method="POST" action="form" accept-charset=utf-8>
<div class="form-group">
<textarea name="body" placeholder="Write an e-mail here..." class="form-control"></textarea>
</div>
<div class="form-group">
<input type="text" name="author" placeholder="Author" class="form-control author" />
</div>
<div class="form-group">
<input class="btn btn-lg btn-secondary btn-block" type="submit" value="Send" />
</div>
</form>
Буду благодарен за любую помощь!
Приветствия, Шимон
PS.Вот ссылка на репо на GitHub: https://github.com/alojzz/alojzz.github.io/blob/master/server.js