所以我在Node.js中使用express进行这个应用程序,我有这个错误 错误:证书链中的自签名证书
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 - -
我已经更改了邮件服务,也不喜欢我的防病毒软件,我无法在网上找到该软件,并且对每个人都有一点帮助
谢谢你
答案 0 :(得分:7)
在this GitHub issue中使用Nodemailer和自签名证书进行了很好的讨论。具体来说,this post可以帮助摆脱错误消息:
如果您知道主机没有有效证书,您可以使用
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: "username@abc.co.th", pass: "passwordmail" }, tls: { rejectUnauthorized: false } }));
但是,如果您认为您尝试使用的邮件服务具有有效证书,则您的计算机或网络可能存在本地问题。