Hoje eu quero comentar um detalhe de implementação de e-mail muito interessante e como podemos contornar essa característica que temos em alguns endereços de e-mail.
Uma coisa que muita gente acredita é que nossos e-mails somente funcionam dessa maneira:
tuliofaria@devpleno.com
Um detalhe é que podemos adicionar alguns itens a mais nesse e-mail e aí depende do provedor permitir ou não esse e-mail.
No caso do Gmail nós conseguimos colocar alguma string qualquer na frente:
tuliofaria+string@devpleno.com
tulio.faria@devpleno.com
Nós podemos utilizar o primeiro exemplo em alguns sistemas, onde queremos criar mais de uma conta com o mesmo e-mail e também para verificar de onde veio esse e-mail.
Se eu cadastrei esse e-mail em americanas.com eu posso utilizar por exemplo:
tuliofaria+americanas@devpleno.com
Se a gente quiser construir um sistema e desconsiderar essas características de que cada provedor corrige podemos utilizar um módulo chamado normalize-e-mail, ele vai fazer exatamente isso, pegar esse e-mail que está sujo e, dependendo das normalizações que o provedor faz, vai fazer também:
yarn add normalize-email
const normalize-email = require('normalize-email')
console.log(normalizeEmail('tuliofaria+americanas@gmail.com'))
console.log(normalizeEmail('tulio.faria+americanas@outlook.com'))
Com isso ele vai fazer as devidas correções. É muito simples, porém muito útil.
Confira o video:
Curta o DevPleno no Facebook, se inscreva no canal no YouTube e cadastre seu e-mail para não perder as atualizações. Abraço!
Mestre em Sistemas de Informação pela USP e criador do DevPleno. Iniciou sua carreira como professor com apenas 18 anos em um curso técnico, foram 11 anos em sala de aula formando desenvolvedores fullstack no sul de Minas Gerais.