如何使用 Angular 4 设置 Nodemailer?

How to set up Nodemailer with Angular 4?

我在任何地方都找不到指导我完成在 Angular 中设置 nodemailer 的教程 4. 我什至不确定将 nodemailer intro 中的 ts 放在哪个文件中网站:

'use strict';
const nodemailer = require('nodemailer');

// Generate test SMTP service account from ethereal.email
// Only needed if you don't have a real mail account for testing
nodemailer.createTestAccount((err, account) => {

    // create reusable transporter object using the default SMTP transport
    let transporter = nodemailer.createTransport({
        host: 'smtp.ethereal.email',
        port: 587,
        secure: false, // true for 465, false for other ports
        auth: {
            user: account.user, // generated ethereal user
            pass: account.pass  // generated ethereal password
        }
    });

    // setup email data with unicode symbols
    let mailOptions = {
        from: '"Fred Foo " <foo@blurdybloop.com>', // sender address
        to: 'bar@blurdybloop.com, baz@blurdybloop.com', // list of receivers
        subject: 'Hello ✔', // Subject line
        text: 'Hello world?', // plain text body
        html: '<b>Hello world?</b>' // html body
    };

    // send mail with defined transport object
    transporter.sendMail(mailOptions, (error, info) => {
        if (error) {
            return console.log(error);
        }
        console.log('Message sent: %s', info.messageId);
        // Preview only available when sending through an Ethereal account
        console.log('Preview URL: %s', nodemailer.getTestMessageUrl(info));

        // Message sent: <b658f8ca-6296-ccf4-8306-87d57a0b4321@blurdybloop.com>
        // Preview URL: https://ethereal.email/message/WaQKMgKddxQDoou...
    });
});

这是一件复杂的事情,我们将不胜感激!如果我知道将代码放在哪里以及它应该做什么,我就能将一些东西拼凑起来。

您将客户端代码与服务器端代码混淆了。 NodeMailer 是用于 express 的服务器端包。 Angular 4 会调用 API 来执行该代码。 如果你想启动 nodemailer 和 运行,你需要在 node 中这样做。 您使用的是 express 等后端吗?