Node.js | Bibliotecas de desenvolvedores | Email Verification API | WhoisXML API

Biblioteca de cliente Node.js Email Verification Biblioteca de cliente Node.js Email Verification

Como Verificar um Endereço de E-mail Usando o Node.js

Neste artigo, vou orientá-lo sobre a melhor maneira possível de verificar endereços de e-mail e melhorar o processo de registro de usuários no seu site do Node.

A verificação de e-mail é extremamente importante. Garantir que os usuários que se inscrevem no seu site tenham um endereço de e-mail válido é importante por vários motivos:

  • Você pode detectar erros de digitação do usuário quando ele estiver digitando seu endereço de e-mail e solicitar que ele os corrija antes de permitir o registro.
  • Ele permite que você mantenha contato com seus usuários: você pode enviar um e-mail quando o cartão de crédito deles expirar, quando enviar recibos, quando houver novos recursos disponíveis, etc.
  • Ele garante que seus usuários possam redefinir a senha com segurança caso a esqueçam: sem um endereço de e-mail não há como validar a identidade de alguém além da verificação manual e humana.
  • mpede que os usuários se inscrevam no seu site com endereços de e-mail descartáveis, como os do Mailinator. Os usuários que se inscrevem nesses serviços geralmente tentam evitar o fornecimento de seu e-mail real por um motivo específico: talvez queiram abusar de seus recursos freemium, etc. reduza o risco de abuso do seu site.

No entanto, o ponto em que a verificação de e-mail se torna complexa é decidir como verificar os endereços de e-mail para o SEU site. Cada site tem requisitos diferentes e, dependendo do que seu site faz, talvez você queira verificar o endereço de e-mail de um usuário apenas de uma ou duas maneiras específicas.

Para ajudar a resolver esse problema, lançamos recentemente o email-verifier. Biblioteca NPM.

Essa biblioteca do Node permite que você verifique facilmente os endereços de e-mail de várias maneiras diferentes e fornece verificação flexível (como você verá daqui a pouco).

Então, sem mais delongas, vamos dar uma olhada em como ele funciona!

Criar uma Conta de Email Verification

A primeira coisa que você precisa fazer para verificar endereços de e-mail usando a biblioteca de verificação de e-mail é criar uma conta gratuita para o serviço da Email Verification API aqui: https://emailverification.whoisxmlapi.com/signup

Depois de criar sua conta gratuita, você poderá usar o serviço de API para verificar 1.000 endereços de e-mail gratuitamente. Se quiser fazer mais, você sempre poderá pagar um valor muito baixo.

Instalar o pacote

Agora que sua conta está configurada, a próxima coisa que você precisa fazer é instalar o pacote Node. Na linha de comando execute o seguinte comando:

            
$ npm install email-verifier
            
            

Isso fará o download e instalará a versão mais recente do pacote email-verifier do NPM.

Verificar um endereço de e-mail

Agora que você tem uma conta e o pacote instalados, vamos dar uma olhada em alguns códigos que podem ser executados para verificar um endereço de e-mail imediatamente.

Aqui está um pequeno script, 'verify.js', que verificará um endereço de e-mail usando todos os possíveis métodos de verificação:

            
const Verifier = require("email-verifier");

let verifier = new Verifier("your_email_verification_api_key");
verifier.verify("r@rdegges.com", (err, data) => {
    if (err) throw err;
    console.log(data);
});
            
            

Como você pode ver, há apenas três etapas para usar a biblioteca:

  • Importar a biblioteca.
  • Crie um objeto "Verifier" fornecendo a ele a chave de API que você criou quando se inscreveu no serviço de API.
  • Execute o método "verify", passando o endereço de e-mail que você deseja verificar e uma função de retorno de chamada. Essa função de retorno de chamada é a que será executada quando a verificação for concluída.

Os dados retornados no retorno de chamada terão a seguinte aparência:

            
{
    "catchAll": "false",
    "disposable": "false",
    "dns": "OK",
    "emailAddress": "r@rdegges.com",
    "free": "false",
    "mxs": [ "mail.protonmail.ch" ],
    "smtp": "OK",
    "validFormat": "OK"
}
            
            

Cada valor JSON retornado corresponde a diferentes tipos de verificação:

  • A verificação "catchAll" informa se esse endereço de e-mail é ou não um endereço "catch-all". Esse refere-se a um tipo especial de endereço que pode receber e-mails de qualquer número de outros endereços. Isso é comum em empresas em que, se você enviar um e-mail para test@hi.com e outro para test2@hi.com, ambos os e-mails irão para a mesma caixa de entrada.
  • A verificação "descartável" informa se o endereço de e-mail é descartável ou não (criado por meio de um serviço como o serviço como o Mailinator). Isso o ajuda a verificar se há abuso. Esse valor será "false" se o e-mail não for descartável, e "true" caso contrário.
  • A verificação de "dns" garantirá que o domínio no endereço de e-mail, por exemplo: gmail.com, seja um domínio válido. Esse valor será "OK" se o domínio for válido.
  • A opção "free" verificará se o endereço de e-mail é de um provedor de e-mail gratuito, como o Gmail, ou não. Esse valor será "false" se o endereço de e-mail não for gratuito e "true" caso contrário.
  • A verificação "validFormat" permite que você saiba se há algum erro de sintaxe no endereço de e-mail. Essa é uma verificação básica que é feita para detectar erros de digitação simples ou erros graves. Esse valor será "false" se não houver erros e "true" caso contrário.
    Nos bastidores, o serviço de API está lidando com todos esses tipos de verificações para você de várias maneiras interessantes. Falarei sobre isso em um artigo futuro.

Personalizando o Email Verification

Como mencionei anteriormente, o exemplo de código acima mostrou como validar um endereço de e-mail com todos os métodos de verificação possíveis, mas isso pode não ser o que você deseja fazer em todos os casos.

A verificação de e-mail pode ser lenta. Cada tipo de verificação leva um pequeno tempo (frações de um segundo), mas quando todas as verificações são realizadas, esse tempo pode se acumular.

Se o seu site só precisa verificar um endereço de e-mail para garantir que ele possa receber e-mails, por exemplo, você pode instruir o pacote email-verifier a realizar apenas essa verificação. A biblioteca do verificador de e-mail é totalmente flexível: você pode ativar ou desativar qualquer tipo de verificação que desejar.

Veja como funciona:

            
const Verifier = require("email-verifier");

let verifier = new Verifier("your_email_verification_api_key", {
    checkCatchAll: false,
    checkDisposable: false,
    checkFree: false,
    validateDNS: false,
    validateSMTP: false
});
            
            

Ao criar o objeto "Verifier", você pode passar opções adicionais (conforme mostrado acima) que afetam diretamente os tipos de verificações que são executadas. Sinta-se à vontade para usá-las conforme necessário.

  • OBSERVAÇÃO: Depois de criar o objeto "Verifier", sempre que você chamar o método "verify" para verificar um endereço de e-mail, as opções especificadas quando o "Verifier" foi criado permanecerão em em vigor.

Melhorar o fluxo de registro do usuário

Agora que você viu como é possível verificar endereços de e-mail usando a biblioteca de verificação de e-mail, provavelmente queira modificar o processo de registro do seu site para fazer uso disso.

A melhor maneira de fazer isso é bastante simples. Quando um usuário preenche o formulário de registro e o envia, você deve:

  • Receber os dados do formulário em seu servidor da Web
  • Analisar os dados de registro do usuário, incluindo seu endereço de e-mail
  • Verifique imediatamente o endereço de e-mail do usuário usando a biblioteca de verificação de e-mail
  • Mostrar um erro ao usuário se o e-mail for inválido, solicitando que ele tente novamente
  • Se tudo estiver em ordem, crie a nova conta do usuário e faça o login

Ao seguir essas etapas, você melhorará muito o fluxo de registro do seu site ao detectar erros de digitação e erros do usuário no início do processo de registro, antes que seja tarde demais para corrigi-los.

Resumo

Portanto, para concluir: verificar os endereços de e-mail dos seus usuários pode ser uma maneira simples de melhorar a experiência do usuário no seu site.

Se você precisar verificar um endereço de e-mail, o novo email-verifier é a ferramenta perfeita, pois lida com muitos tipos diferentes de validação e é extremamente flexível.

Se tiver alguma dúvida, envie-nos um e-mail!