nodejs使用emailjs实现发邮件

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官方文档

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
Node.js 中,可以使用 Worker Threads 模块实现多线程。Worker Threads 模块允许创建新的 Node.js 进程,并在这些进程中执行 JavaScript 代码。这样可以将计算密集型任务分散到多个进程中,提高应用程序的性能。 以下是使用 Worker Threads 实现多线程的示例: ```javascript const { Worker } = require('worker_threads'); function runService(workerData) { return new Promise((resolve, reject) => { const worker = new Worker('./worker.js', { workerData }); worker.on('message', resolve); worker.on('error', reject); worker.on('exit', (code) => { if (code !== 0) reject(new Error(`Worker stopped with exit code ${code}`)); }); }); } (async () => { const result = await runService('Hello, World!'); console.log(result); })(); ``` 上面的代码中,我们定义了一个 runService 函数,该函数通过创建一个新的 Worker 进程来执行 worker.js 文件中的代码,并将 workerData 作为参数传递给 Worker 进程。runService 函数返回一个 Promise 对象,当 Worker 进程发送消息时,该 Promise 对象将被解析并返回消息内容。 下面是 worker.js 文件的示例代码: ```javascript const { workerData, parentPort } = require('worker_threads'); parentPort.postMessage(`Worker received: ${workerData}`); ``` 上面的代码中,我们使用 workerData 和 parentPort 对象来访问从主线程传递过来的数据和向主线程发送消息。 通过使用 Worker Threads 模块,我们可以在 Node.js 应用程序中实现多线程,并通过分散计算任务到多个进程中来提高应用程序的性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值