这是nodeemailer的一个基本示例。

var http = require('http');
var port = process.env.PORT || 8080;
var async = require('async');
var nodemailer = require('nodemailer');

// create reusable transporter object using SMTP transport

    var mailOptions = {
        from: '*********', // sender address
        to: '[email protected]', // list of receivers
        subject: 'Hello ✔', // Subject line
        text: 'Hello world ✔', // plaintext body
        html: '<b>Hello world ✔</b>', // html body
        attachments: [
            {   // utf-8 string as an attachment
                filename: 'text1.txt',
                content: 'hello world!'
            }]
    };
    var transporter = nodemailer.createTransport({
        service: 'Gmail',
        auth: {
            user: '*******',
            pass: '****'
        }
    });
    // send mail with defined transport object

    var server = http.createServer(function(request, response) {
         if (request.url === '/favicon.ico') {
        response.writeHead(200, {'Content-Type': 'image/x-icon'} );
        response.end();
        return;
        }
        response.writeHead(200, {
            "Content-Type": "text/plain"
        });

        transporter.sendMail(mailOptions, function(error, info){
        if(error){
            console.log("error is " ,error);
        }else{
            console.log('Message sent: ' + info.response);
        }
    });
        response.end("Hello World\n");
    }).listen(port);

    console.log("Node server listening on port " + port);

转到本地主机时出现以下错误:
[Error: No transport method defined]

我在Windows7上使用的是NodeMailer版本1.4.23。有什么问题吗?

最佳答案

他们的初始示例似乎提到了服务的Gmail,而根据提供的其他示例,它应该是gmail。似乎是文件问题。

关于javascript - 无法使用Nodemailer发送邮件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26031060/

10-13 08:35