Node:(番外篇) 如何使用Nodejs向指定邮箱发送邮件

17 篇文章 4 订阅

最近在做一个demo的时候需要使用到了邮件发送验证码的需求(不使用短信验证码的原因主要还是短信验证码需要花费~~),那继node路完结后开始推出番外篇,说说如何使用nodejs模块向邮箱发送信息;
注: 今天我们使用的是QQ邮箱,其他的比如126邮箱也都是类似的


  1. 首先第一步,使用node操作邮箱发送信息我们需要开启QQ邮箱的POP服务:
    开启步骤: 登录扣扣邮箱 -> 设置 -> 账户 -> 找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务点击开启 -> 生成授权码
  2. 开启邮箱的POP服务后,生成授权码,开始node代码的编写:

node提供了一个nodemailer模块帮助我们完成邮件的发送,首先我们安装nodemailer模块: npm i nodemailer --save
开始

// 1. 导入nodemailer
const nodeMailer = require("nodemailer")

// 定义一个生成验证码的函数
function getCode(){
	return Math.random().toString(16).slice(2, 6).toUpperCase()
}

//创建一个传送器
const transporter = nodeMailer.createTransport({
	host: "smtp.qq.com", //邮件发送的域名,我们这里使用的是QQ的服务
	port: 587,    // SMTP端口号
	secure: false,   //secure:true for port 465, secure:false for port 587
	auth: {
		user: "1084983891@qq.com",  //邮件发送方的邮箱
		pass: "XXXX"    //我们开启POP服务生成的授权码
	}
})
//配置发件箱和收件箱的信息
const mailOptions = {
	from: "10849838891@qq.com",  //发件箱
	to: "10849838891@qq.com",     //收件箱地址
	subject: "<测试邮件>注册验证码:",    //邮件的标题
	html: `您的注测码是:${getCode()}`
}
// 发送邮件:
transporter.sendMail(mailOptions, (err, info) => {
	if(err){
		throw new Error("邮件发送失败!")
		return
	}
	console.log(info.response)
})

好了,就这样简单的几部我们就实现了邮件的发送,在之后的项目中大家便可以使用邮件发送进行一些验证码校验之类的事情了.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,下面是使用 Node.js 发送邮件的步骤: 1. 安装 Node.js 的邮件模块,这里推荐使用 "nodemailer" 模块。可以在命令行中输入 "npm install nodemailer" 来安装。 2. 在代码中引入 "nodemailer" 模块: ``` const nodemailer = require('nodemailer'); ``` 3. 创建发送邮件的对象: ``` const transporter = nodemailer.createTransport({ host: 'smtp.example.com', port: 465, secure: true, auth: { user: 'user@example.com', pass: 'password' } }); ``` 4. 设置邮件内容: ``` const mailOptions = { from: '"Sender Name" <sender@example.com>', to: 'receiver@example.com', subject: 'Subject', text: 'Hello World', html: '<b>Hello World</b>' }; ``` 5. 发送邮件: ``` transporter.sendMail(mailOptions, (error, info) => { if (error) { return console.log(error); } console.log('Message sent: %s', info.messageId); }); ``` 希望这些信息对您有帮助! ### 回答2: 使用Node.js向某个邮箱发送消息的步骤如下: 1. 首先,确保已安装Node.js环境,并创建一个新的Node.js项目。 2. 使用npm安装`nodemailer`包,该包是一个简单易用的Node.js库,用于发送邮件。 ```shell npm install nodemailer ``` 3. 在Node.js项目中,引入`nodemailer`库。 ```javascript const nodemailer = require('nodemailer'); ``` 4. 创建一个SMTP传输对象,用于发送邮件。需要提供SMTP服务器的配置信息,例如邮箱地址、密码、端口号等。 ```javascript let transporter = nodemailer.createTransport({ service: '你的邮箱服务提供商', auth: { user: '你的邮箱地址', pass: '你的邮箱密码' } }); ``` 5. 构建邮件内容,并指定收件人、主题、正文等信息。 ```javascript let mailOptions = { from: '你的邮箱地址', to: '收件人邮箱地址', subject: '邮件主题', text: '邮件正文' }; ``` 6. 调用`transporter.sendMail()`方法发送邮件。 ```javascript transporter.sendMail(mailOptions, (error, info) => { if (error) { console.log(error); } else { console.log('邮件发送成功:' + info.response); } }); ``` 7. 运行Node.js文件,即可通过`nodemailer`库向指定邮箱地址发送消息。 以上就是使用Node.js向某个邮箱发送消息的基本步骤,根据实际需要,也可以进行更多的配置,例如使用SSL、添加附件等。 ### 回答3: 使用Node.js向某个邮箱发送消息可以通过以下几个步骤实现。 首先,需要确保本地已经安装了Node.js。可以在官方网站(https://nodejs.org)上下载并安装最新版本的Node.js。 接下来,我们需要安装node内置的“nodemailer”模块。在命令行中执行以下命令可以快速安装: ``` npm install nodemailer ``` 安装完毕后,可以创建一个新的Node.js文件,并引入“nodemailer”模块: ```javascript const nodemailer = require("nodemailer"); ``` 然后,我们需要设置SMTP传输服务信息,包括发件人的邮箱、授权码等: ```javascript let transporter = nodemailer.createTransport({ service: "你的邮件服务提供商", auth: { user: "你的邮箱地址", pass: "你的授权码" } }); ``` 接下来,我们可以准备发送邮件指定收件人、主题和内容等信息: ```javascript let mailOptions = { from: "发件人邮箱地址", to: "收件人邮箱地址", subject: "邮件主题", text: "邮件内容" }; ``` 最后,我们可以使用创建的传输器对象发送邮件: ```javascript transporter.sendMail(mailOptions, (error, info) => { if (error) { console.log(error); } else { console.log("邮件发送成功:", info.response); } }); ``` 以上就是使用Node.js向某个邮箱发送消息的基本步骤。可以根据实际需求进行具体的设置和调整,比如添加附件、HTML内容等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值