无法使用Nodemailer发送邮件

时间:2014-09-25 05:17:47

标签: javascript node.js nodemailer

这是Nodemailer的基本示例。

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: 'rishiag.iitd@gmail.com', // 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);

我在转到localhost时遇到以下错误:

[Error: No transport method defined]

我在Windows 7上使用Nodemailer版本1.4.23。可能是什么问题?

1 个答案:

答案 0 :(得分:3)

他们的初始示例似乎提到了服务的Gmail,而它应该提供gmail。似乎是一个文档问题。