React NodeMailer Net.ISIP不是一个函数



我正在尝试与React进行联系页面,我正在努力发送电子邮件部分。

我正在尝试使用nodemailer,而我的代码是:

var nodemailer = require('nodemailer');
var xoauth2=require('xoauth2');
var transporter = nodemailer.createTransport({
  service: 'gmail',
  auth: {
    xoauth2:xoauth2.createXOAuth2Generator({
      user: 'mymail@gmail.com',
        clientId: '',
        clientSecret: '',
        refreshToken:''
    })
  }
});
var mailOptions = {
  from: 'Name <mymail@gmail.com>',
  to: 'mymail@gmail.com',
  subject: 'Sending Email to test Node.js nodemailer',
  text: 'That was easy to test!'
};
transporter.sendMail(mailOptions, function(error, info){
  if (error) {
    console.log(error);
  } else {
    console.log('Email sent');
  }
});

我已经从Google API和OAUTH2 PLAYGROUND中放置了clientIdclientSecretrefreshToken,并启用了非安全应用程序。但是当我试图发送电子邮件时,我会得到
typeError:net.isip不是函数

编辑:我尝试在service: 'gmail'

之后添加

类型:'smtp', 主持人:'smtp.gmail.com',

仍然不起作用

我在尝试实现NodeMailer代码客户端时面临同一问题。原因是因为NodeMailer似乎在浏览器中(仅在节点中)不起作用。将其服务器移动(到Express App)解决了问题。

有关相同错误(但影响另一个库)的这篇文章还表明,在浏览器中运行文件是问题:http://www.ganzhoupress.com/github_/github_/cypress-io/cypress-io/cypress/issues/1981

希望这会有所帮助。

替换==&gt;var nodemailer = require('nodemailer');

使用此==&gt;var nodemailer = window.require('nodemailer');

这将解决您的问题。

最新更新