@holfizz

Как сдeлать отправку сообщение google smtp?

В общем есть переменные в dotenv 63f80f2d70255602922787.png
файл mail-service
const nodemailer = require("nodemailer")

class MailService {
	constructor() {
		this.transporter = nodemailer.createTransport({
			host: process.env.SMTP_HOST,
			port: process.env.SMTP_PORT,
			secure: true,
			auth: {
				user: process.env.SMTP_USER,
				pass: process.env.SMTP_PASSWORD,
			},
		})
	}

	async sendActivationMail(to, link) {
		await this.transporter.sendMail({
			from: process.env.SMTP_USER,
			to,
			subject: `activation account on the` + process.env.API_URL,
			text: "",
			html: `
        <div>
          <h1>activation link</h1>
          <a href='${link}'>{link}</a>
        </div>`,
		})
	}
}

module.exports = new MailService()


и в файле user-service
await mailService.sendActivationMail(
			email,
			`${process.env.API_URL}/api/activate/${activationLink}`
		)

вот ошибка
[Error: 7416:error:1408F10B:SSL routines:ssl3_get_record:wrong version number:c:\ws\deps\openssl\openssl\ssl\record\ssl3_record.c:332:
] {
  library: 'SSL routines',
  function: 'ssl3_get_record',
  reason: 'wrong version number',
  code: 'ESOCKET',
  command: 'CONN'
}

в чем может быть проблема порт менял также на 465 не помогало также менял secure на false не помогало , помогите пожалуйста
  • Вопрос задан
  • 52 просмотра
Пригласить эксперта
Ответы на вопрос 1
@jimquery
Первый же ответ в гугле выдаёт
const transport = nodemailer.createTransport({
    host: process.env.MAIL_HOST, // mx.example.com
    port: process.env.MAIL_PORT, // 143
    secureConnection: false, // TLS requires secureConnection to be false
    auth: {
        user: process.env.MAIL_ADDRESS,
        pass: process.env.MAIL_PWD
    },
    tls: {
        ciphers:'SSLv3'
    }
});

тыц
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы