Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

180
Visualizações
Publicación de correo electrónico de Nodemailer pero dice pendiente

Estoy tratando de usar Nodemailer en una aplicación React/Express en la que estoy trabajando y en el servidor dice que está publicando, pero en la pestaña de red se muestra como pendiente y luego nunca pasa. Aquí está mi código:

 const express = require('express'); const router = express.Router(); const nodemailer = require('nodemailer'); require("dotenv").config(); // router.get('/', () => { // resizeBy.send('Welcome to my email form') // }); module.exports = () => { router.post('/', (req, res) => { console.log("inside event handler") let transporter = nodemailer.createTransport({ service: 'Gmail', port: 465, auth: { user: process.env.EMAIL, pass: process.env.PASSWORD } }); let mailOptions = { from: process.env.EMAIL, to: `${req.body.values.email}`, subject: `Message from: ${process.env.EMAIL}`, html: ` <h3>Information</h3> <ul> <li>Name: ${req.body.values.name}</li> <li>Email: ${req.body.values.email}</li> </ul> <h3>Message</h3> <p>${req.body.values.message}</p> ` } transporter.sendMail(mailOptions, (err, response) => { if (err) { res.send(err) console.log("Error happened in send email", err) } else { res.send('Success! Message sent!') console.log("Message sent") } }) transporter.close(); }) return router; }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Parece que no necesita usar transporter.close() ya que no está agrupando conexiones. Usarlo en este contexto es probablemente tu problema.

transporter.sendMail() es asíncrono, por lo que está enviando correo y luego cerrándolo inmediatamente con transporter.close() . Esto significa que la devolución de llamada de sendMail no se activa, lo que a su vez significa que res.send() nunca se envía, lo que da como resultado una solicitud http interminable y pendiente para su cliente.

Sugiero eliminar la línea transporter.close() y volver a intentarlo.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda