错误:证书链中的自签名证书 Nodejs NodeMailer Express

问题描述 投票:0回答:2

所以我用 Express 在 Node.js 中做这个应用程序,但出现了这个错误 错误:证书链中的自签名证书

at Error (native)
    at TLSSocket.<anonymous> (_tls_wrap.js:1092:38)
    at emitNone (events.js:86:13)
    at TLSSocket.emit (events.js:185:7)
    at TLSSocket._finishInit (_tls_wrap.js:610:8)
    at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:440:38) code: 'ESOCKET', command: 'CONN' }
POST /contact/send - - ms - -

我已经更改了邮件服务,也禁用了我的防病毒软件,我在网上找不到解决方案,一点点帮助对大家都有好处

谢谢你

node.js nodemailer
2个回答
58
投票

这个 GitHub 问题 中有关于使用 Nodemailer 和自签名证书的很好的讨论。具体来说,这篇文章可以帮助消除错误消息:

如果您知道主机没有有效的证书,您可以在传输设置中使用

tls.rejectUnauthorized
选项允许它:

var transporter = nodemailer.createTransport(smtpTransport({
      host: "outmail.abc.co.th", // hostname
      secure: false, // use SSL
      port: 25, // port for secure SMTP
      auth: {
          user: "[email protected]",
          pass: "passwordmail"
      },
      tls: {
          rejectUnauthorized: false
      }
  }));
  

但是,如果您认为您尝试使用的邮件服务具有有效证书,则您的计算机或网络可能存在本地问题。


0
投票

电子邮件:{ 邮件传输协议:{ 主机:SMTP_HOST, 端口:465, 安全:真实, 要求TLS:假, 授权:{ 用户:SMTP_USERNAME, 通过:SMTP_PASSWORD, }, }, 来自:EMAIL_FROM, }

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.