jquery - 如何在nodemailer中将PDF附加到电子邮件?

标签 jquery node.js pdf mean-stack nodemailer

我想通过nodemailer将pdf报告附加到邮件给用户。我在前端使用jquery。

<script>
$(document).ready(function () {
    var from, to, subject, text;
    $("#send_email").click(function () {
        to = $("#to").val();
        subject = $("#subject").val();
        text = $("#content").val();
        $("#message").text("Sending E-mail...");
        $.get("http://localhost:8080/send", {to: to, subject: subject, text: text}, function (data) {
            if (data == "sent") {
                $("#message").empty().html("Email is sent " + to + " .");
            }
        });
    });
});
</script>

API 看起来像这样。而且效果很好。我想知道如何动态添加附件

app.get('/send', function (req, res) {
    var mailOptions = {
        to: req.query.to,
        subject: req.query.subject,
        text: req.query.text
    };
    console.log(mailOptions);
    smtpTransport.sendMail(mailOptions, function (error, response) {
        if (error) {
            console.log(error);
            res.end("error");
        }
        else {
            console.log("Message sent: " + response.message);
            res.end("sent");
        }
    });
});

最佳答案

您可以通过以下方式添加附件:

var mailOptions = {
    to: req.query.to,
    subject: req.query.subject,
    text: req.query.text,
    attachments:[{
        filename: 'filename.pdf',
        content: new Buffer(FILE_CONTENT, 'base64'),
        contentType: 'application/pdf'
    }]
};

您可以在此处查看示例:https://github.com/nodemailer/nodemailer/blob/master/examples/full.js

关于jquery - 如何在nodemailer中将PDF附加到电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35717841/

相关文章:

javascript - 顺利将margin-top设置为div

javascript - 在 $.each 上调用

jquery - 页面滚动时固定在 DIV 上的位置

node.js - 如何使用服务 worker 缓存handlebars.js

node.js - 如何从一个方法调用另一种方法

html - 如何在 HTML 中插入分页符以便 wkhtmltopdf 解析它?

java - 如何在单页 PDF 中打印多个 jasper 报告

javascript - 在 HTML Canvas 上移动元素

node.js - 我们如何在从 UI 传递到后端服务器时隐藏身份验证凭据等信息?

c++ - 从PDF中提取第一行文本