Cuando nodemailer envía un correo electrónico desde un formulario de contacto, va a un administrador, quien luego responde a la dirección de correo electrónico que se encuentra en req.body.email
Me gustaría establecer la dirección de respuesta con este valor, de modo que el administrador pueda simplemente presionar responder para enviar una respuesta con los datos del mensaje, sin tener que copiar y pegar el correo electrónico en el campo "para". Esto es lo que tengo:
Enviar correo electrónico útil
const sendEmail = async options => { const transporter = nodemailer.createTransport({ host: process.env.SMTP_HOST, port: process.env.SMTP_PORT, auth: { user: process.env.SMTP_EMAIL, pass: process.env.SMTP_PASSWORD } }); // send mail with defined transport object let message = { // from: `${options.fromName} <${process.env.FROM_EMAIL}>`, from: `${options.fromName} <${options.fromEmail}>`, to: options.email, subject: options.subject, text: options.message, html: options.body }; const info = await transporter.sendMail(message); console.log('Message sent: %s', info.messageId); }; module.exports = sendEmail;Enviar función de correo electrónico
try { await sendEmail({ fromName: emailBody.name, fromEmail: emailBody.email, email: 'admin@email.com', subject: `${emailBody.name} sent a message!`, body: emailBodyText }); } catch (err) { console.log(err); return next(new ErrorResponse('Email could not be sent', 500)); }Esto es lo que obtengo:
response: '553 5.7.1 <user@gmail.com>: Sender address rejected: not owned by user admin@email.com'Entiendo que admin@email.com no puede enviar correos electrónicos desde user@gmail.com, pero me gustaría tener ese ux de poder simplemente presionar responder y enviar el correo electrónico al usuario. ¿Hay una buena manera de hacer que funcione así?