Node.js 用express.js发送了一封电子邮件
我想用Node.js发送一封电子邮件。我使用了模块Express mailer,但它不起作用Node.js 用express.js发送了一封电子邮件,node.js,express,Node.js,Express,我想用Node.js发送一封电子邮件。我使用了模块Express mailer,但它不起作用 app.post('/mail', function(req, res, next){ mailer.extend(app,{ from: req.body.email, host:'smtp.gmail.com', secureConnection: true, port: 465, transportMethod: 'SMTP', auth:
app.post('/mail', function(req, res, next){
mailer.extend(app,{
from: req.body.email,
host:'smtp.gmail.com',
secureConnection: true,
port: 465,
transportMethod: 'SMTP',
auth: {
user: 'example@gmail.com',
pass: '**********'
}
});
app.mailler.send('email',{
to: 'test@hotmail.com',
subject: req.body.subject,
message: req.body.message
}, function(err){
if(err){
console.log('error');return
}
res.send('email sent');
});
});
错误:
TypeError:无法在C:\Users\Developpement\mailer\index.js:49:15调用参数C:\Users\Developpement\mailer\node\u modules\express\lib\router\index.js:164:37(C:\Users\Developpement\mailer\node\u modules\express\lib\router\index.js:138:11)处未定义的方法“send”通过时
app.mailler.send
应为app.mailer.send
更新
要修复第二个错误,“错误:应用程序已使用Express Mailer进行了扩展”,您必须将
Mailer.extend()
块移出路由并移入父范围,在父范围中它将只执行一次(并且只对应用程序对象进行一次变异)。app.mailler
在我看来像是一个打字错误。源文件中的第49行是什么?谢谢,但在显示此消息错误后,控制台中仍然显示“错误”:应用程序已使用Express Mailer进行了扩展!然后您应该只在一个地方扩展它一次,比如在路由之前的中间件函数中。