Реагирует на mailmailer net.isIP - это не функция - PullRequest
3 голосов
/ 14 марта 2019

Я пытаюсь создать контактную страницу с реакцией и пытаюсь отправить часть электронной почты.

Я пытаюсь использовать 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');
  }
});

Я поставил clientId, clientSecret и refreshToken от Google API и oauth2 и включил функцию небезопасных приложений.Но когда я пытаюсь отправить электронное письмо, я получаю
TypeError: net.isIP не является функцией

РЕДАКТИРОВАТЬ: я пытался добавить после service: 'gmail'

тип: 'SMTP', хост: 'smtp.gmail.com',

Все еще не работает

1 Ответ

0 голосов
/ 23 июня 2019

Я столкнулся с той же проблемой при попытке реализовать клиентскую часть кода nodemailer. Причина была в том, что nodemailer не работает в браузере (только в узле). Перемещение на сервер (в экспресс-приложение) решило проблему.

Этот пост, касающийся той же ошибки (но затрагивающей другую библиотеку), также предполагает, что проблема заключается в запуске файлов в браузере: http://www.ganzhoupress.com/github_/cypress-io/cypress/issues/1981

Надеюсь, это поможет.

...