我正在嘗試在expressjs應用程序中使用nodemailer。我應該不斷創建傳輸對象出路由處理程序或在路由處理程序內創建傳輸對象就好了嗎?在expressjs中使用Nodemailer的正確方法是什麼?
var express = require('express')
, app = express()
, nodemailer = require('nodemailer');
smtpTrans = nodemailer.createTransport('SMTP', {
service: 'Gmail',
auth: {
user: "[email protected]",
pass: "application-specific-password"
}
});
app.post('/register', function(req, res){
smtpTrans.sendMail(mailOptions);
});
或
var express = require('express')
, app = express()
, nodemailer = require('nodemailer');
app.post('/register', function(req, res){
smtpTrans = nodemailer.createTransport('SMTP', {
service: 'Gmail',
auth: {
user: "[email protected]",
pass: "application-specific-password"
}
});
smtpTrans.sendMail(mailOptions);
});
該文檔指出*「相同的傳輸對象可以並應該多次重複使用。」*(請參閱[這裏](https://github.com/andris9/Nodemailer#setting-up-a-transport-method )),所以我想正確的方法是你的第一個例子。 –
這將保持SMTP連接始終正確? – Yalamber
確實。如果您發送大量消息以減少連接時間開銷,那麼這就是您想要的。 –