Zeit сейчас, экспресс-отправка запроса, не стрельба - PullRequest
0 голосов
/ 25 сентября 2019

У меня есть экспресс-приложение, и я создал контактную форму, которая работает локально и отправляет тестовые электронные письма.

У меня есть настройка nodemailer для различных сред, в которых в настоящее время используются тестовые электронные письма горелки.

Однако, как только я перейду к Zeit.Запрос POST не срабатывает вообще.Любая помощь приветствуется.

Конвертация GLOBAL_EMAIL установлена ​​в приложении на производстве.

router.post('/contact/send', (req, res) => {
  // async..await is not allowed in global scope, must use a wrapper
  async function main() {
    const output = `
    <h3>You have a new contact message!</h3>
    <ul>
    <li><b>Name:</b> ${ req.body.name }</li>
    <li><b>Email:</b> ${ req.body.email }</li>
    <li><b>Phone Number:</b> ${ req.body.phone_number }</li>
    </ul>
    <h3>Message:</h3>
    <p>${ req.body.message }</p>
  `;

    var mailConfig ;
    if (process.env.NODE_ENV === 'production' ){
      mailConfig = {
        host: "smtp.mailtrap.io", // smtp.sendgrid.net
        port: 2525, // 587
        auth: {
          user: "a3ad3f28b0982c", // a48aef40aa09bf
          pass: "64f3d499b1d6d2" // 222473c0a9e6e9
        }
      };
    } else {
      mailConfig = {
        host: "smtp.mailtrap.io",
        port: 2525,
        auth: {
          user: "a3ad3f28b0982c", // a48aef40aa09bf
          pass: "64f3d499b1d6d2" // 222473c0a9e6e9
        }
      };
    }
    let transporter = nodemailer.createTransport(mailConfig);

    // send mail with defined transport object
    let info = await transporter.sendMail({
      from: `"${req.body.name}" <${req.body.email}>`, // sender address
      to: process.env.GLOBAL_EMAIL || 'ben@benbagley.dev', // list of receivers
      subject: 'New contact message', // Subject line
      html: output // html body
    });

    console.log('Message sent: %s', info.messageId);
    // Message sent: <b658f8ca-6296-ccf4-8306-87d57a0b4321@example.com>
  }

  main().catch(console.error);
});

1 Ответ

0 голосов
/ 25 сентября 2019

Это должно помочь .У меня была та же проблема, и следующие шаги решили мою проблему.

Перед посещением ссылки вы должны создать файл .env, а также добавить содержимое в теперь секретный и посмотреть, решит ли это вашу проблему.проблема или нет.

...