Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
实现nodeEmailer以使用Node.js发送邮件时出错_Node.js_Nodemailer - Fatal编程技术网

实现nodeEmailer以使用Node.js发送邮件时出错

实现nodeEmailer以使用Node.js发送邮件时出错,node.js,nodemailer,Node.js,Nodemailer,我试图使用node.js使用nodeEmailer模块向用户发送电子邮件,但它抛出了以下错误 错误: this.transporter.mailer = this; ^ TypeError: Cannot create property 'mailer' on string 'SMTP' at Mail (/opt/lampp/htdocs/heroku/FGDP/node_modules/nodemailer/lib/m

我试图使用node.js使用
nodeEmailer
模块向用户发送电子邮件,但它抛出了以下错误

错误:

this.transporter.mailer = this;
                                ^

TypeError: Cannot create property 'mailer' on string 'SMTP'
    at Mail (/opt/lampp/htdocs/heroku/FGDP/node_modules/nodemailer/lib/mailer/index.js:45:33)
    at Object.module.exports.createTransport (/opt/lampp/htdocs/heroku/FGDP/node_modules/nodemailer/lib/nodemailer.js:46:14)
    at Object.<anonymous> (/opt/lampp/htdocs/heroku/FGDP/api/api.js:8:32)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)

在这里,我需要将邮件发送给有效的用户,但得到了上述错误。

我认为正确的语法如下所示

var nodemailer = require("nodemailer");
var smtpTransport = nodemailer.createTransport({
service: "Gmail",
auth: {
    user: "subhrajyoti@gmai.com",
    pass: "***********"
}
});

我认为正确的语法是这样的

var nodemailer = require("nodemailer");
var smtpTransport = nodemailer.createTransport({
service: "Gmail",
auth: {
    user: "subhrajyoti@gmai.com",
    pass: "***********"
}
});
//使用Smtp协议发送电子邮件
var nodeEmailer=require(“nodeEmailer”);
var smtpTransport=nodemailer.createTransport({
主机:“smtp.mailgun.org”,
港口:25,
安全:false,//对于465为true,对于其他端口为false
认证:{
用户:“smtp用户名”,
密码:“smtp密码”
}
});
var邮件={
来自:From@gmail.com",
至:to@gmail.com",
主题:“你的主题”,
文字:“Node.js我的新世界”,
html:“Node.js我的新世界”
}
smtpTransport.sendMail(邮件,函数(错误,响应){
如果(错误){
console.log(错误);
}否则{
//console.log(“发送的消息:+response.Message”);
}
smtpTransport.close();
});
//使用Smtp协议发送电子邮件
var nodeEmailer=require(“nodeEmailer”);
var smtpTransport=nodemailer.createTransport({
主机:“smtp.mailgun.org”,
港口:25,
安全:false,//对于465为true,对于其他端口为false
认证:{
用户:“smtp用户名”,
密码:“smtp密码”
}
});
var邮件={
来自:From@gmail.com",
至:to@gmail.com",
主题:“你的主题”,
文字:“Node.js我的新世界”,
html:“Node.js我的新世界”
}
smtpTransport.sendMail(邮件,函数(错误,响应){
如果(错误){
console.log(错误);
}否则{
//console.log(“发送的消息:+response.Message”);
}
smtpTransport.close();
});

根据,第一个参数是javascript对象,而不是字符串“SMTP”。根据,第一个参数是javascript对象,而不是字符串“SMTP”。这只是一个示例。我的意思是说你必须删除“SMTP”。它不在nodemailer博士中,这只是一个例子。我的意思是说你必须删除“SMTP”。它不在NodeEmailer文档中
// Use Smtp Protocol to send Email
      var nodemailer = require("nodemailer");
      var smtpTransport = nodemailer.createTransport({
        host: 'smtp.mailgun.org',
        port: 25,
        secure: false, // true for 465, false for other ports
        auth: {
            user: "smtp username", 
            pass: "smtp password" 
        }
      });
      var mail = {
          from: "From@gmail.com",
          to: "to@gmail.com",
          subject: "Your subject",
          text: "Node.js New world for me",
          html: "<b>Node.js New world for me</b>"
      }

      smtpTransport.sendMail(mail, function(error, response){
          if(error){
              console.log(error);
          }else{
                //console.log("Message sent: " + response.message);
          }
          smtpTransport.close();
      });