node.js - 邮件中的证书链错误中的自签名证书
问题描述
我试着写一个简单的邮件程序。我使用了节点邮件程序和SMTP 协议模块。我执行了。但它显示如下错误:
邮件中的证书链错误中的自签名证书
问题是什么?
var express = require('express');
var app=express();
var nodemailer = require('nodemailer');
var smtpTransport = require('nodemailer-smtp-transport');
app.get('/nodemail', function(req, res, next) {
var transporter = nodemailer.createTransport(smtpTransport({
service: 'Gmail',
host: 'smtp.gmail.com',
port: 465,
auth: {
user: 'demodevelopers6@gmail.com',
pass: '***********'
}
}));
var link="https://codeforgeek.com/2016/06/node-js-redis-tutorial-building-email-verification-system/";
transporter.sendMail({
from: "demodevelopers6@gmail.com",
subject:"sailjstutorials" ,
to: "vignesh.mack03@gmail.com",
html : "Hello"+"vignesh <br> Please Click on the link to verify your email.<br><a href="+link+">Click here to verify</a>"
}, function(error, info) {
if (error) {
return console.log(error);
}
console.log('Message %s sent: %s', info.messageId, info.response);
console.log("Mail sent successfully");
res.write("Mail sent successfully");
});
});
app.listen(8086,function()
{
console.log("port listening");
});
解决方案
我刚才遇到了同样的问题,请尝试查看下面的链接以获得更详细的回复。
错误:证书链中的自签名证书 Nodejs nodemailer express
使用 tls.rejectUnauthorized = false 来帮助避免该问题。
例子:
let transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: 'myemail@gmail.com',
pass: 'password'
},
tls: {
rejectUnauthorized: false
}
});
推荐阅读
- regex - 如何在谷歌表格公式中提取精确的 10 位 ISBN10
- java - 为什么以下测试对于第一种情况总是更快?
- c++ - 删除指针数据成员的类中delete的位置
- blender - 我可以在搅拌机中附加带有绳索和固体物体的衣服以进行模拟吗?
- react-native - 修复错误:无法从“”解析模块“./index.android”
- apple-push-notifications - 钱包通行证推送通知服务
- c# - 使用 msgkit 将 eml 转换为 msg 时,Outlook 不会在预览中显示日期
- junit - 在 JUnit5 中使用 TestSuites
- swift - 在 uitableviewcell xib 中的 uicollectionview 中将图像设置为 imageview
- python - 为什么我得到 QuerySet 对象没有属性用户