#node.js #forms #email #express
#node.js #формы #Адрес электронной почты #экспресс
Вопрос:
Как собирать данные из формы (имя, адрес электронной почты, вложения) и отправлять их на мою электронную почту с помощью express. Я не нашел исчерпывающих статей по этой теме. Я буду благодарен за помощь.
Комментарии:
1. Нет, у меня нет. Я интерфейсный разработчик, но у меня небольшой опыт работы с node.
2. Вы можете найти несколько статей в Интернете ( javascript.tutorialhorizon.com/2015/07/02 /… ). Я думаю, ваш вопрос слишком узок для сферы охвата веб-сайта.
Ответ №1:
Я считаю, что вы знаете, как отправить форму
Для отправки любой почты через узел установите популярный модуль «nodemailer»
1.установите модуль nodemailer в каталог вашего проекта
npm install nodemailer
2-перейдите к контроллеру, где вы обрабатываете данные отправки формы на сервере
var express = require('express'),
nodemailer = require("nodemailer");
app = express.createServer();
app.use(express.bodyParser());
app.post('/formProcess', function (req, res) {
var data=req.body;
var smtpTransport = nodemailer.createTransport("SMTP",{
service: "Gmail",
auth: {
user: "email@gmail.com",
pass: "gmailPassword"
}});
smtpTransport.sendMail({ //email options
from: "Sender Name <email@gmail.com>",
to: "Receiver Name <receiver@email.com>", // receiver
subject: "Emailing with nodemailer", // subject
html: "here your data goes" // body (var data which we've declared)
}, function(error, response){ //callback
if(error){
console.log(error);
}else{
console.log("Message sent: " res.message);
}
smtpTransport.close();
}); });