nodejs通过QQ邮箱发送邮件丨技术开发分享录

nodejs通过QQ邮箱发送邮件

{{ detail.nickname }}

转载 翻译 {{ formatTime(detail.create_time) }} 字数 {{ detail.content && detail.content.length }} 阅读 {{ detail.read_num }} {{ formatTag(v) }}

"nodejs处理邮箱发送功能需要安装 [nodemailer](https://github.com/nodemailer/nodemailer)\nnodemailer官网:https://nodemailer.com/\n\n## 一、安装\n\n```shell\n> npm install nodemailer --save\n```\n\n## 二、示例\n\n因为代码比较少,这里就不分开写了,新建 `email.js` 完整代码如下:\n\n```\nconst nodemailer = require(\"nodemailer\");\n\nconst OPEN_EMAIL = \"123456@qq.com\"; // 开通服务的邮箱(一般都是自己的邮箱)\n\nlet transporter = nodemailer.createTransport({\n  host: \"smtp.qq.com\", // 邮箱服务器主机,如:smtp.163.com\n  service: \"qq\", // 使用了内置传输发送邮件 查看支持列表:https://nodemailer.com/smtp/well-known/\n  port: 465, // SMTP 端口\n  secureConnection: true, // 使用了 SSL\n  auth: {\n    user: OPEN_EMAIL, // 你的邮箱\n    // 这里密码不是qq密码,是你设置的smtp授权码\n    pass: \"lskbxfwlnrrfbjae\",\n  },\n});\n\n// 发送\nfunction send() {\n  let mailOptions = {\n    from: `张三<${OPEN_EMAIL}>`, // sender address\n    to: \"12345678@qq.com\", // 可以发送给别个,也可以发送给自己\n    subject: \"测试\", // Subject line\n    // 发送text或者html格式\n    // text: 'Hello 我是张三', // plain text body\n    html: \"<b>Hello 我是张三</b>\", // html body\n  };\n  // send mail with defined transport object\n  transporter.sendMail(mailOptions, (error, info) => {\n    if (error) {\n      return console.log(error);\n    }\n    console.log(\"Message sent: %s\", info.messageId);\n  });\n}\n\nsend();\n```\n\n**QQ授权码获取**\n\n打开pc端qq邮箱,点击设置,再点击帐户\n\n![](https://img2018.cnblogs.com/blog/1656151/201909/1656151-20190921001135262-1942573098.png)\n\n往下拉 可开启POP3/SMTP服务 根据提示即可获取qq邮箱授权码\n\n![](https://img2018.cnblogs.com/blog/1656151/201909/1656151-20190921000155673-1345320898.png)\n\n\n## 三、运行\n\n```shell\n> node email.js\n```\n\n>[error] 注意:有时候发送成功,但收件人收不到邮件,可能因为网络问题,也有可能对方把它作为垃圾邮件了,在对方的垃圾邮箱可查找发送的邮箱。\n\n参考链接:\n\n- https://www.cnblogs.com/HJ412/p/11560364.html"
PS:写作不易,如要转裁,请标明转载出处。

如果此篇对您有帮助,可小额赞助,以兹鼓励!

猜你想看