Boa noite,
Durante a execução dos testes do envio do link de e-mail na criação do usuário com o pacote nodemailer tive uma exceção apresentada abaixo:
Error: self-signed certificate in certificate chain
at TLSSocket.onConnectSecure (node:_tls_wrap:1532:34)
at TLSSocket.emit (node:events:527:28)
at TLSSocket._finishInit (node:_tls_wrap:946:8)
at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:727:12) {
code: 'ESOCKET',
command: 'CONN'
Pesquisando no StackOverFlow informa que o certificado autoassinado do npm não existe mais: fonte(https://blog.npmjs.org/post/78085451721/npms-self-signed-certificate-is-no-more)
Para dar andamento na aula utilizei a informação vindas desses links do StackOverFlow.
https://pt.stackoverflow.com/questions/487784/nodemailer-error-self-signed-certificate-in-certificate-chain https://stackoverflow.com/questions/45088006/nodejs-error-self-signed-certificate-in-certificate-chain
Acrescentei a propriedade tls: {rejectUnauthorized: false,}
A configuração ficou desta forma:
async function enviaEmail(usuario){
const contaTeste = await nodemailer.createTestAccount();
const transportador = nodemailer.createTransport({
host:'smtp.ethereal.email',
auth:contaTeste,tls: {
rejectUnauthorized: false
}
});
.....
A partir desse informação a exceção não ocorreu mais.
Forte abraço!