Saltar al contenido

Cómo enviar un correo electrónico desde JavaScript

septiembre 29, 2021
apple touch icon@2

Indirecto a través de su servidor: llamada a API de terceros: seguro y recomendado


Su servidor puede llamar a la API de terceros después de la autenticación y autorización adecuadas. Las claves de API no están expuestas al cliente.

node.js – https://www.npmjs.org/package/node-mandrill

const mandrill = require('node-mandrill')('<your API Key>'); 

function sendEmail ( _name, _email, _subject, _message) {
    mandrill('/messages/send', {
        message: {
            to: [{email: _email , name: _name}],
            from_email: '[email protected]',
            subject: _subject,
            text: _message
        }
    }, function(error, response){
        if (error) console.log( error );
        else console.log(response);
    });
}

// define your own email api which points to your server.

app.post( '/api/sendemail/', function(req, res){
            
    let _name = req.body.name;
    let _email = req.body.email;
    let _subject = req.body.subject;
    let _messsage = req.body.message;

    //implement your spam protection or checks. 

    sendEmail ( _name, _email, _subject, _message );

});

y luego use use $ .ajax en el cliente para llamar a su API de correo electrónico.


Directamente desde el cliente – Llamando a API de terceros – no recomendado


Envíe un correo electrónico utilizando solo JavaScript

en breve:

  1. registrarse en Mandrill para obtener una clave API
  2. cargar jQuery
  3. use $ .ajax para enviar un correo electrónico

Como esto –

function sendMail() {
    $.ajax({
      type: 'POST',
      url: 'https://mandrillapp.com/api/1.0/messages/send.json',
      data: {
        'key': 'YOUR API KEY HERE',
        'message': {
          'from_email': '[email protected]',
          'to': [
              {
                'email': '[email protected]',
                'name': 'RECIPIENT NAME (OPTIONAL)',
                'type': 'to'
              }
            ],
          'autotext': 'true',
          'subject': 'YOUR SUBJECT HERE!',
          'html': 'YOUR EMAIL CONTENT HERE! YOU CAN USE HTML!'
        }
      }
     }).done(function(response) {
       console.log(response); // if you're into that sorta thing
     });
}

https://medium.com/design-startups/b53319616782

Nota: tenga en cuenta que su clave API es visible para cualquier persona, por lo que cualquier usuario malintencionado puede usar su clave para enviar correos electrónicos que pueden consumir su cuota.

close