Почему данные с помощью .env не срабатывают?

Рейтинг: 0Ответов: 0Опубликовано: 27.06.2023

Всем привет!

Я создаю сервис, в котором необходимо верифицировать почту.

Сервис написан на express.js, для отправки писем использую nodemailer, как SMTP-провайдера - SendGrid.

Все нужные библиотеки я подключил к проекту. Данные в папке .env валидны.

import nodemailer from '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_USERNAME,
                pass: process.env.SMTP_PASSWORD
            }
        })
    }

    async sendActivationMail(to, link) {
        await this.transporter.sendMail({
            form: process.env.SMTP_USERNAME,
            to,
            subject: 'Активация аккаунта на ' + process.env.API_URL,
            text: '',
            html: `
                    <div>
                        <h1>Для фктивации перейдите по ссылке</h1>
                        <a href="${link}">${link}</a>
                    </div>
                `,
        })
    }
}

export default new MailService()

Проблема в том когда я в поля user and pass вставляю данные с помощью .env, выдает ошибку "Error: connect ECONNREFUSED 127.0.0.1:465", но когда я вставляю в эти же поля данные вручную, все работает.

В чем может быть проблема ?

Ответы

Ответов пока нет.