nodejs使用emailjs实现发邮件
前端想要实现发邮件的功能,在node.js中使用emailjs是其中一种方法。首先我们需要作如下准备工作:
1、安装emailjs
GitHub地址
npm install emailjs
npm init 这些初始化步骤我相信大家都会的
要安装该模块需要使用npm包管理器,或者你也可以使用其他的包管理器,详情请查看上面GitHub项目地址
2、引入模块
通过import的方式引入,需要在package.json中添加
“type”: “module”
import { SMTPClient } from 'emailjs';
const client = new SMTPClient({
user: 'user',//你的邮箱账户如: example@qq.com
//此处并非你的邮箱密码,而是邮箱的授权码
password: 'password',
//此处为邮箱服务器主机,例如你用的是QQ邮箱发邮件,则是
//smtp.qq.com
host: 'smtp.your-email.com',
//不用改
ssl: true,
});
// send the message and get a callback with an error or details of the message that was sent
client.send(
{
//发送的邮件的内容
text: 'i hope this works',
//发件人邮箱
from: 'you <username@your-email.com>',
//收件人邮箱,看格式应该是可以同时发送至多个收件人
to: 'someone <someone@your-email.com>, another <another@your-email.com>',
//此处应该是备用邮箱的意思,
//网翻是抄送收件人,并非发送邮件的主要对象,没有可以删掉
cc: 'else <else@your-email.com>',
//邮件的主题, 即标题
subject: 'testing emailjs',
},
(err, message) => {
console.log(err || message);
}
);
到这里算是完成了,不过我们还需要获得QQ邮箱的授权码,这是QQ邮箱官方提供给我们用以登录第三方客户端的授权密码。
3、为了获得这个授权码,我们需要在电脑端登录网页QQ邮箱,在主页面中点击设置,再转到账户设置:
然后往下翻,就能看到如下的画面:
只需按提示开启第一个"POP3/SMTP服务"就能获取授权码,当然其他的选项可能也行,不过我开了第一个已经成功了,就不再折腾了。
更多内容请自行查看GitHub官方文档。