Как заставить запросы электронной почты работать с динамическими HTML-ответами? - PullRequest
1 голос
/ 13 мая 2019

Я отправляю электронное письмо в формате HTML, используя AWS SES (Nodejs). Он работает со статическим HTML, но я не знаю, как заставить его работать с динамическим HTML.

файл nodejs

HTML = "..." // load external html file
var params = {
    Destination: {/* required */
        ToAddresses:[abc@gmail.com, test@gmail.com]
    },
    Message: {/* required */
        Body: { /* required */
            Html: {
                Data: HTML,
                Charset: 'UTF-8'
            },
        },
        Subject: { /* required */
            Data: 'Test email', /* required */
            Charset: 'UTF-8'
        }
    },
    Source: "myemail@gmail.com"
}

ses.sendEmail(params, function(err, data) {
  // If something goes wrong, print an error message.
  if(err) {
    console.log(err.message);
  } else {
    console.log("Email sent! Message ID: ", data.MessageId);
  }
});

HTML-файл

<html>
<head></head>
<body>
  <h1>Amazon SES Test</h1>
  <p>Your order is placed.
    <a href='https://example.com/id=1234125'>View your order</a> 
   </p>
</body>
</html>

Мой вопрос: как передать href из файла nodejs в html-файл как переменную.

Любое предложение приветствуется.

1 Ответ

1 голос
/ 13 мая 2019

У вас может быть заполнитель в вашем HTML, например: <a href="HREF_PLACEHOLDER">...</a>.

И затем используйте string.replace () в вашем HTML, чтобы заменить его фактическим href, который вы хотите.

Например:

function dynamicHtml(href) {
  return HTML.replace("HREF_PLACEHOLDER", href);
}

И вместо передачи HTML в ваш объект params, передайте его dynamicHtml()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...