Node.js 节点邮件程序错误:";不支持的配置,将NodeEmailer降级到v0.7.1以使用它;在本地主机中

Node.js 节点邮件程序错误:";不支持的配置,将NodeEmailer降级到v0.7.1以使用它;在本地主机中,node.js,express,nodemailer,Node.js,Express,Nodemailer,我是nodejs新手,尝试从nodeEmailer模块发送邮件,但出现错误,即“不支持的配置,将nodeEmailer降级到v0.7.1以使用它” 这是我的密码:- var nodemailer = require('nodemailer'); var mailTransport = nodemailer.createTransport('SMTP', { service: 'Gmail', auth: { user: 'xxxxxxxx@gmail.com',

我是nodejs新手,尝试从nodeEmailer模块发送邮件,但出现错误,即“
不支持的配置,将nodeEmailer降级到v0.7.1以使用它

这是我的密码:-

var nodemailer = require('nodemailer');
var mailTransport = nodemailer.createTransport('SMTP', {
    service: 'Gmail',
    auth: {
        user: 'xxxxxxxx@gmail.com',
        pass: 'xxxxxxxxx',
    }
});

mailTransport.sendMail({
    from: '"ABC" <info@xxxx.example.com>',
    to: 'abcsss@xxx.example.com',
    subject: 'Test',
    text: 'Thank you for contact.',
}, function (err) {
    if (err)
        console.error('Unable to send email: ' + err);
});
var nodemailer=require('nodemailer');
var mailTransport=nodemailer.createTransport('SMTP'{
服务:“Gmail”,
认证:{
用户:'xxxxxxxx@gmail.com',
通行证:'xxxxxxxxx',
}
});
mailTransport.sendMail({
发件人:“‘ABC’”,
致:'abcsss@xxx.example.com',
主题:“测试”,
文字:“感谢您的联系。”,
},函数(err){
如果(错误)
console.error('无法发送电子邮件:'+错误);
});

要使用NodeEmailer v1,请尝试实现此代码

var express = require('express');
var nodemailer = require("nodemailer");
var smtpTransport = require("nodemailer-smtp-transport")
var app = express();

var smtpTransport = nodemailer.createTransport(smtpTransport({
    host : "YOUR SMTP SERVER ADDRESS",
    secureConnection : false,
    port: 587,
    auth : {
        user : "YourEmail",
        pass : "YourEmailPassword"
    }
}));
app.get('/send',function(req,res){
    var mailOptions={
        from : "YourEmail",
        to : "Recipient'sEmail",
        subject : "Your Subject",
        text : "Your Text",
        html : "HTML GENERATED",
        attachments : [
            {   // file on disk as an attachment
                filename: 'text3.txt',
                path: 'Your File path' // stream this file
            }
        ]
    }
    console.log(mailOptions);
    smtpTransport.sendMail(mailOptions, function(error, response){
        if(error){
            console.log(error);
            res.end("error");
        }else{
            console.log(response.response.toString());
            console.log("Message sent: " + response.message);
            res.end("sent");
        }
    });
});

app.listen(3000,function(){
    console.log("Express Started on Port 3000");
});

您可以在NodeEmailr V0.7.1中尝试此功能。这对我有用

var express = require('express');

var bodyParser = require('body-parser');

var app = express();

app.use(bodyParser());

app.get('/', function(req, res) {

    var html = '<form action="/" method="post">' +
        'Enter Email id:' +
        '<input type="text" name="userEmail"placeholder="Email" />' +
        '<br>' +
        '<button type="submit">Submit</button>' +
        '</form>';

    res.send(html);
});
app.post('/', function(req, res) {

    var userEmail = req.body.userEmail;

    var nodemailer = require('nodemailer');

    var transporter = nodemailer.createTransport("SMTP", {
        host: 'smtp.gmail.com',
        secureConnection: false,
        port: 587,
        auth: {
            user: 'dhruv******@gmail.com', //Sender Email id
            pass: '**********' //Sender Email Password
        }
    });

    var mailOptions = {
        from: 'dhruv*******@gmail.com', // sender address
        to: 'dhaval********@gmail.com', // list of receivers
        subject: 'Message Form ' + userEmail, // Subject line
        text: 'Hi....' + userEmail // plaintext body

    };

    transporter.sendMail(mailOptions, function(error, info) {
        if (error) {
            return console.log(error);
        }
        console.log('Message sent: ' + info.response);
        var html = 'Hello: ' + userEmail + '.<br>' +
            '<a href="/">Try again.</a>';
        res.send(html);
    });

});

app.listen(80);
var express=require('express');
var bodyParser=require('body-parser');
var-app=express();
app.use(bodyParser());
app.get('/',函数(req,res){
var html=''+
'输入电子邮件id:'+
'' +
“
”+ “提交”+ ''; res.send(html); }); app.post(“/”,函数(请求,res){ var userEmail=req.body.userEmail; var nodeEmailer=require('nodeEmailer'); var transporter=nodemailer.createTransport(“SMTP”{ 主机:“smtp.gmail.com”, 安全连接:false, 港口:587, 认证:{ 用户:“dhruv******@gmail.com”,//发件人电子邮件id 密码:'*******'//发件人电子邮件密码 } }); var mailpoptions={ 发件人:'dhruv******@gmail.com',//发件人地址 收件人:'dhaval********@gmail.com',//收件人列表 主题:'消息表单'+用户电子邮件,//主题行 text:'Hi…'+用户电子邮件//纯文本正文 }; transporter.sendMail(邮件选项,函数(错误,信息){ 如果(错误){ 返回console.log(错误); } console.log('发送的消息:'+信息响应); var html='Hello:'+userEmail+'。
'+ ''; res.send(html); }); }); app.listen(80);
查看如何使用较新的NodeEmailer版本创建传输。TypeError:undefined不是函数“smtpTran..”@vinodh您能检查smtpTransport是否正确导入吗?是否正确导入如果您像我一样在线组合示例代码,请注意类似“const smtpTransport=nodeEmailer.createTransport”的内容(smtpTransport(…);“使用不同的变量名,如transporter。