Как отправить электронное письмо на адрес из поля ввода пользователя в React.js/Express.js?

#javascript #reactjs #express #email #axios

Вопрос:

Я создаю базовое приложение для электронной почты, в котором пользователь может отправлять электронное письмо кому угодно. Я хочу иметь возможность отправлять электронное письмо на указанный пользователем адрес электронной почты. Я не могу использовать nodemailer, потому что для этого требуется пароль и user.id и я не хочу запрашивать пароль у пользователя.

Я искал в Google уже два дня, и все, что я могу найти,-это как отправить электронное письмо самому себе, а не на пользовательский ввод.

Было бы здорово, если бы кто-нибудь мог указать мне правильное направление.

Спасибо!

Ответ №1:

У Nodemailer есть транспорт sendmail, который позволяет отправлять почту без какой-либо аутентификации.

 let transporter = nodemailer.createTransport({
sendmail: true,
newline: 'unix',
    path: '/usr/sbin/sendmail'
});
   transporter.sendMail({
    from: 'sender@your-domain.com',
    to: 'recipient@example.com',
    subject: 'Message',
    text: 'I hope this message gets delivered!'
}, (err, info) => {
    console.log(info.envelope);
    console.log(info.messageId);
});
 

Комментарии:

1. Спасибо! Я понял, что могу использовать «to: req.body.email» для получения адреса электронной почты, введенного пользователем