NodeJS

Nó.js Enviar e-mail com anexo

Nó.js Enviar e-mail com anexo
Nó.js é o motor JavaScript do lado do servidor que é amado por desenvolvedores da web e administradores de sistema em todo o mundo. Nó.js tem um rico conjunto de módulos que você pode instalar usando o Node Package Manager (NPM) e usar para fazer quase qualquer tarefa.

Existem muitos nós.Módulos js para enviar e-mails usando o Node.js como Nodemailer, emailjs, correio expresso etc.

Neste artigo, vou mostrar como enviar e-mail e também como enviar e-mail com anexo com Nodemailer Nó.módulo js. Vamos começar.

Requisitos:

Para seguir este artigo, você deve ter:

Você deve ser capaz de encontrar artigos dedicados a cada um desses tópicos no linuxhint.com. Certifique-se de verificá-los para obter mais informações.

Criando o diretório do projeto:

É sempre melhor criar um novo diretório para cada nó.js app você escreve. Porque, por padrão, Node.Módulos js são instalados em node_modules / diretório dentro do seu diretório de trabalho atual. Dessa forma, os módulos são separados para cada aplicativo que você escreve e você pode usar versões diferentes do mesmo módulo em aplicativos diferentes. Isso é muito flexível do que instalar módulos globalmente.

Crie um diretório de projeto (vamos chamá-lo node-mail) com o seguinte comando:

$ mkdir node-mail

Agora navegue até o diretório do projeto com o seguinte comando:

$ cd node-mail

Agora crie um pacote.json arquivo com o seguinte comando:

$ npm init -y

Como você pode ver, um básico pacote.json arquivo é criado.

Instalando o Nodemailer:

Nesta seção, vou mostrar como instalar Nodemailer Nó.Módulo js usando NPM.

Primeiro, certifique-se de que o Node.js está instalado e funcionando corretamente com o seguinte comando:

$ node --version

Como você pode ver, Node.js 10.11.0 está instalado e funcionando corretamente no meu computador. A versão em seu computador pode ser diferente. Está tudo bem, mas deveria ser a versão 6.x ou mais tarde. Caso contrário, o Nodemailer não funcionará.

Agora, certifique-se de que o NPM esteja instalado e funcionando corretamente com o seguinte comando:

$ npm --- versão

Como você pode ver, NPM 6.4.1 está instalado e funcionando corretamente no meu computador. A versão em seu computador pode ser diferente. Está tudo bem.

Você precisa de conectividade com a Internet para instalar Nodemailer usando NPM. Portanto, certifique-se de estar conectado à Internet.

Agora, instale Nodemailer Nó.Módulo js usando NPM com o seguinte comando:

$ npm install nodemailer --save

Nodemailer está instalado.

Enviando e-mail com Nodemailer:

Nesta seção, vou mostrar como enviar e-mail de sua conta do gmail com Nodemailer.

Primeiro, crie um novo arquivo (vamos chamá-lo enviar correio.js) no diretório do seu projeto com o seguinte comando:

$ touch sendmail.js

Agora digite as seguintes linhas de código em enviar correio.js arquivo e salve-o.

Aqui, na linha 1, importei o Nodemailer.

Na linha 3, eu defino meu e-mail para meu email variável. Este é o e-mail a partir do qual irei enviar um e-mail para outras contas de e-mail. Certifique-se de alterá-lo para o seu endereço de e-mail.

Na linha 5-11, um objeto de transporte é criado. É necessário enviar um e-mail usando o Nodemailer. O objetivo do objeto de transporte é verificar as informações do remetente. Você só precisa fazer isso uma vez. Uma vez que as informações do remetente são verificadas, um objeto de transporte deve ser criado.

Na linha 6, eu defino serviço para gmail como estou usando uma conta do GMail para enviar e-mails. Os serviços suportados são DynectEmail, Gmail, hot.ee, Hotmail, iCloud, mail.ee, Mail.Ru, Mailgun, Mailjet, Mandrill, Postmark, QQ, QQex, SendGrid, SES, Yahoo, yandex, Zoho. O serviço nome não diferencia maiúsculas de minúsculas. Então você pode colocar gmail ou GMAIL ou Gmail lá. É tudo a mesma coisa.  Certifique-se de definir o nome de serviço correto.

NOTA: Você também pode usar seu próprio servidor de e-mail. Para fazer isso, você deve criar um objeto de transporte Nodemailer personalizado. Para saber mais sobre isso, visite a documentação oficial do Nodemailer em https: // nodemailer.com / smtp /

Na linha 9, coloco a senha do meu gmail conta que estou usando para enviar e-mails de. Certifique-se de alterá-lo para o seu.

Na linha 14-19, criei um mensagem objeto. Neste objeto, a partir de é definido como o endereço de e-mail do remetente, para é o endereço de e-mail do destinatário. sujeito é o assunto do e-mail e texto é o conteúdo do e-mail.

Na linha 22, usei o transporte.enviar correio() método para enviar e-mail usando Nodemailer. O primeiro argumento do enviar correio() método é o mensagem objeto definido na linha 14-19. O segundo argumento é uma função de retorno de chamada. A função de retorno de chamada simplesmente verifica se há erros e imprime uma mensagem para o console dependendo se o e-mail foi enviado ou não.

Agora execute o enviar correio.js script da seguinte forma:

$ node sendmail.js

Como você pode ver, o e-mail foi enviado.

Eu verifiquei meu Gmail e voila! Eu recebi o e-mail muito bem.

Enviando e-mail com anexo usando Nodemailer:

Agora que você sabe como enviar e-mail usando o Nodemailer, enviar e-mail com anexo é moleza!

Para enviar e-mail com anexo, tudo que você precisa fazer é modificar o mensagem objeto na linha 14-19 e o resto do código deve ser o mesmo.

Mudar o mensagem objeto da seguinte forma como salvar o arquivo.

Aqui, anexos é um array de objetos. Cada objeto define um arquivo de anexo. Então você pode enviar vários arquivos de uma vez. Na linha 20-22, eu defino o caminho relativo para um arquivo Olá.TXT para o caminho propriedade do objeto.

Agora execute o sendmail.script js novamente.

$ node sendmail.js

Como você pode ver, o e-mail foi enviado.

Como você pode ver, recebi a mensagem junto com o anexo Olá.TXT.

Você também pode definir nome para o seu arquivo de anexo. Para isso, você deve alterar o objeto de anexo da seguinte forma:

Para enviar vários anexos, crie vários objetos de anexo da seguinte maneira:

É assim que você envia e-mail com anexo usando o Nodemailer no Node.js. Obrigado por ler este artigo.

Top 5 cartas de captura de jogos
Todos nós vimos e amamos streaming de jogos no YouTube. PewDiePie, Jakesepticye e Markiplier são apenas alguns dos melhores jogadores que ganharam mil...
Como desenvolver um jogo no Linux
Uma década atrás, poucos usuários de Linux preveriam que seu sistema operacional favorito um dia seria uma plataforma de jogos popular para videogames...
Portas de código aberto para motores de jogos comerciais
Recriações gratuitas, de código aberto e de mecanismo de jogo de plataforma cruzada podem ser usadas para jogar jogos antigos, bem como alguns dos tít...