Поместить ссылку в тело сообщения, отправленного с помощью Mailgun? - PullRequest
0 голосов
/ 25 июня 2018

Я использую Mailgun для отправки писем с этой функцией на сервер моего узла.

Ссылка на мой сайт отображается в виде обычного текста, а не кликабельной ссылки. Как я могу сделать ссылку реальной ссылкой в ​​письме?

const emailWelcome = ({ name, email }) => {
  const data = {
    from: 'James <james@example.com>',
    to: email,
    subject: 'Welcome to My Site',
    text: `Hi ${name},

    Welcome to <a href="http://example.com/">My Site</a>

    James
    `,
  };

  mailgun.messages().send(data, function(error, body) {
    console.log(body);
  });
};

1 Ответ

0 голосов
/ 10 июля 2018

Глядя на документацию по mailgun-js, в ней говорится:

Отправка сообщений в формате MIME может быть выполнена с помощью функции sendMime () прокси-объекта messages ().

https://www.npmjs.com/package/mailgun-js#sending-mime-messages

В документации приводится следующий пример кода:

var domain = 'mydomain.org';
var mailgun = require('mailgun-js')({ apiKey: "YOUR API KEY", domain: domain });
var MailComposer = require('nodemailer/lib/mail-composer');

var mailOptions = {
  from: 'you@samples.mailgun.org',
  to: 'mm@samples.mailgun.org',
  subject: 'Test email subject',
  text: 'Test email text',
  html: '<b> Test email text </b>'
};

var mail = new MailComposer(mailOptions);

mail.compile().build((err, message) => {

    var dataToSend = {
        to: 'mm@samples.mailgun.org',
        message: message.toString('ascii')
    };

    mailgun.messages().sendMime(dataToSend, (sendError, body) => {
        if (sendError) {
            console.log(sendError);
            return;
        }
    });
});

На момент публикации этой версии текущая версия 0.20.0.

Как видно из кода, в сообщении, состоящем из нескольких частей, вам необходимо предоставить как текстовую, так и HTML-версию сообщения.

...