Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

212
Vistas
¿Hay alguna forma de obtener un ID de mensaje de correo electrónico etéreo en node.js a través de SendGrid?

Actualmente estoy usando SendGrid como un servicio de correo electrónico en una aplicación web y quiero configurar mi entorno de desarrollo para enviar correos electrónicos a https://ethereal.email/ para asegurarme de que se vean correctamente. La forma en que lo tengo configurado actualmente es que nodemailer.createTestAccount() al inicio, luego registraré las credenciales, luego, si necesito ver los correos electrónicos, tengo que ir manualmente al sitio etéreo para iniciar sesión y ver todos los correos electrónicos

Como estoy usando SendGrid para enviar los mensajes, no puedo simplemente usar nodemailer.getTestMessageUrl(info) , pero realmente me gustaría poder registrar la URL cada vez que se envía un correo electrónico en desarrollo, entonces podría ir directamente al mensaje

Ya intenté imprimir la respuesta de SendGrid, además de conectarme a través de IMAP y cargar el mensaje más reciente, pero ninguno de ellos contiene el ID del mensaje en ninguna parte que pueda ver.

¿Hay alguna forma de obtener la identificación del mensaje de un correo electrónico enviado a ethereal.email y construir una URL directamente al mensaje?

Mi entorno es node.js y estoy usando @sendgrid/mail para enviar mensajes.

¡Gracias!

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Desarrollador evangelista de Twilio SendGrid aquí.

La documentación de Nodemailer aquí sugiere que use ethereal.email como su configuración SMTP en desarrollo. Luego puede usar nodemailer.getTestMessageUrl(info) para obtener la URL correcta.

Dice que está utilizando @sendgrid/mail para enviar mensajes, que no responderán con la URL ya que no se envía a través del servidor SMTP de ethereal.email. Si desea esa URL, lo mejor que puede hacer es reemplazar SendGrid en su entorno de desarrollo/prueba con ethereal.email.

Puede hacer esto creando sus propios objetos de envío de correo electrónico con la misma interfaz, uno para @sendgrid/mail y otro para Nodemailer con credenciales ethereal.email y cargue el objeto que desee según el entorno.

Por ejemplo:

 class SendGridEmail { constructor(sgApiKey) { // construct SG mail object } sendEmail(options) { // use SG mail object to send email } } class NodemailerEmail { constructor() { } sendEmail(options) { } } function getMailer() { if (process.env.NODE_ENV === "production") { return new SendGridEmail(process.env.SG_API_KEY); } else { return new NodemailerEmail(); } } // later getMailer().sendEmail(options);
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda