Tag: nodemailer

在nodemailer中XOAUTH2的优点

nodemailer模块(允许在node.js应用程序中发送电子邮件)支持针对Gmail帐户的XOAUTH2身份validation。 为什么要使用这个通用的电子邮件通知,而不是只指定user:和pass: auth参数? 我明白,密码然后以纯文本forms存储,但它永远不会传播到任何地方。 此外,XOAUTH2方法似乎需要一个clientSecret:参数,这也应该不公开。 那么这里有什么好处呢? 类似的问题:我如何在应用程序中包含身份validation信息而无需将其推入远程回购? 有没有办法用Git忽略这些行?

nodejs从不存在的电子邮件发送电子邮件

我想使用一个不存在的电子邮件(例如no-reply@anyhost.com)发送电子邮件来欢迎我们的用户。 这里是一个例子,如何通过Ruby on Rails( ActionMailer ) # app/mailers/application_mailer.rb class ApplicationMailer < ActionMailer::Base default from: "from@example.com" end 有没有办法做到这一点在nodejs? 库nodemailer需要使用现有的电子邮件地址: var transporter = nodemailer.createTransport('smtps://user%40gmail.com:pass@smtp.gmail.com'); 是否可以使用不存在的电子邮件?

如何从nodejs应用程序发送ejs文件作为HTML电子邮件作为cronjob

我有一个node.js应用程序,我想从这个应用程序每天在上午8点发送一个HTML电子邮件给几个人。 我有一个dashboard.ejs文件,从数据库获取一些数据,并将其显示在引导仪表板模板中。 我想将这个dashboard.ejs作为一个HTML电子邮件发送,包含数据库中的所有数据,并且样式与从应用程序加载这个dashboard.ejs时相同。 我准备好了cron作业并准备好了邮件程序。 我无法做的就是通过电子邮件发送dashboard.ejs文件为HTML。可以这样做吗? 如果是的话,任何帮助将不胜感激。 var mailer = require('express-mailer'); var CronJob = require('cron').CronJob; mailer.extend(app, { from: 'user@gmailcom', host: 'smtp.gmail.com', secureConnection: true; port: 465, // port for secure SMTP transportMethod: 'SMTP', auth: { user: 'user@gmail.com', pass: 'password' } }); var job = new CronJob('00 49 * * * *', function() { console.log('This runs on 49th […]

通过nodemailer的电子邮件发送到Gmail的垃圾邮件

我通过nodemailer发送邮件进入Gmail的收件箱,如果我从本地服务器运行,但进入Gmail的垃圾邮件,如果我从微软Azure服务器运行脚本。 以下是我的脚本 var nodemailer = require('nodemailer'); var EmailTemplates = require('swig-email-templates'); var smtpConfig = { service: 'smtp.office365.com', host: 'smtp.office365.com', port: 587, starttls: { enable: true }, secureConnection: true, auth: { user: 'xxxxx@yyyy.com', pass: 'zzzzzz' } } var templates = new EmailTemplates(); var transporter = nodemailer.createTransport(smtpConfig); var context = { username:'Rajesh', email:'xxxxx@gmail.com', link : 'www.google.co.in' }; templates.render('activate_email.html', […]

从Node.Js和Express.Js中导入的函数返回响应

我有一个express.js post方法,我正在调用一个函数,其代码如下: module.exports.sendEmail = function(to,subject,message){ var transporter = nodemailer.createTransport({ service : 'gmail', auth:{ user : "", pass : "" } }); var mailOptions = { from:'findadriver9@gmail.com', to: to, subject:subject, html:message }; return transporter.sendMail(mailOptions).then(function(data){ var result ={ success:true, message:"Email Sent" } return result; }).catch(function(err){ var err={ success:false }; return err; }); } 我该如何调用函数,以便根据成功和失败我可以定义响应? var response = […]

NodeJS延迟发送电子邮件

我正在使用Nodemailer在我的NodeJS / Express服务器中发送邮件。 发送邮件之前,我想等20分钟,而不是直接发送邮件。 我觉得这个感觉更直接发送邮件。 但我不知道如何做到这一点。 我想我不需要像NodeCron这样的NodeJS cronjob,或者我需要? router.post('/', (req, res) => { const transporter = nodemailer.createTransport(smtpTransport({ host: 'smtp.gmail.com', port: 465, auth: { user: 'noreply@domain.nl', pass: 'pass123' } })); const mailOptions = { from: `"${req.body.name}" <${req.body.email}>`, to: 'info@domain.nl', subject: 'Form send', html: `Content` }; transporter.sendMail(mailOptions, (error, info) => { if (error) res.status(500).json({ responseText: error }); […]

成功? '发送':'失败'默认为'发送'成功=空。 为什么?

我正在使用nodeJS(使用nodemailer lib)发送电子邮件,目前我在整个邮件处理过程中遇到了一些超时问题。 这不是我需要帮助的问题。 这个问题我需要帮助的是,当它到达日志logging部分时,成功将为空,并且sole.log('Message'+使整个console.log语句输出“sent”。没有“Message”,没有失败。 任何想法为什么? nodemailer.send_mail( // e-mail options { to:"alexsb92@gmail.com", sender:"alexsb92@gmail.com", subject:"node_mailer test email", html:'<p><b>Hi,</b> how are you doing?</p>', body:'Hi, how are you doing?' }, // callback function function(error, success){ console.log('Message ' + success ? 'sent' : 'failed'); } );

无法将nodemailer错误响应从node.js发送到angular.js

在这里,当表单提交时,我正在发送邮件。 一切工作正常,唯一的问题是即使邮件没有发送,因为错误的authentication或互联网问题,用户正在得到成功的消息。 我希望如果邮件发送失败,用户应该得到一个错误消息。 客户 this.mail= function() { var data = ({ name :this.name, email :this.email }) //Post Request $http({ method: 'POST', url: '/contact2', data }).then(function successCallback(response) { $mdToast.show( $mdToast.simple() .textContent('Thanks for your message '+data.name) .position($scope.getToastPosition()) .hideDelay(5000) ); }, function errorCallback(response) { $mdToast.show( $mdToast.simple() .textContent('Something went wrong, Please TRY AGAIN '+data.name) .position($scope.getToastPosition()) .hideDelay(5000) ); }); }); […]

使用nodemailer在node.js中发送邮件

我尝试使用Nodemailer在node.js中发送邮件,但是它显示了一些错误,如{ [Error: self signed certificate in certificate chain] code: 'ECONNECTION', command: 'CONN' } 我的node.js代码是 var express = require('express'); var app = express(); var nodemailer = require('nodemailer'); var transporter = nodemailer.createTransport('smtps://something%40gmail.com:password@smtp.gmail.com'); var mailOptions = { to: 'stevecameron2016@gmail.com', subject: 'Hello ?', text: 'Hello world ??', html: '<b>Hello world ??</b>' }; transporter.sendMail(mailOptions, function(error, info){ if(error){ return console.log(error); } […]

使用nodeemailer发送电子邮件时隐藏其他收件人地址

我正在使用node.js在EmailSender项目上工作。 我发现nodeemailer包真的让它更容易。 但是当我发送电子邮件给多个联系人,所有联系人都看到列中的其他联系人地址。 我想隐藏接收者的其他人。 这是接收者只能看到他的电子邮件地址。 我使用的代码是, var mailOptions = { from: 'sender@sender.com', // sender address to: 'reciever1@domain.com,reciever1@domain.com', // list of receivers subject: 'Hello', // Subject line text: 'Hello world', // plaintext body html: '<b>Hello world</b>' // html body }; transporter.sendMail(mailOptions, function(error, info) { if (error) { res.send(error); } else { res.send('Message sent: ' + res); […]