前言:学习本教程,先学习快速启动strapi和安装插件。
第一步:安装插件
使用nodemailer插件,strapi默认提供插件只能使用官方邮箱提供商,下链接是nodemailer插件地址,也可以结合我教程查看,建议先看我教程一遍再看插件文档。
https://www.npmjs.com/package/@strapi/provider-email-nodemailer
# using yarn
yarn add @strapi/provider-email-nodemailer
# using npm
npm install @strapi/provider-email-nodemailer --save
第二步:准备邮箱
详细不赘述,主要就开启服务获取授权码,通过email账号和授权码发送邮件,详细百度
第三步:配置插件
在项目config目录下的的插件文件中添加如下代码
// path: ./config/plugins.js
module.exports = ({ env }) => ({
// ...
email: {
config: {
provider: 'nodemailer',
providerOptions: {
// QQ邮箱服务器和默认端口
host: env('SMTP_HOST', 'smtp.qq.com'),
port: env('SMTP_PORT', 465),
auth: {
// 发送账号和客户端鉴权码
user: env('SMTP_USERNAME', 'xxx@qq.com'),
pass: env('SMTP_PASSWORD', 'tpdroxxxxxecia'),
},
// ... any custom nodemailer options
},
settings: {
// 默认发送账号
defaultFrom: 'xxx@qq.com',
// 默认回复账号
defaultReplyTo: 'xxx@qq.com',
},
},
},
// ...
});
第四步:测试发送邮件
设置完成第三步,第四步第一张截图马赛克地方都是你自己配置的邮箱
输入邮箱号点击发送之后,会收到如下邮件,收到即代表初步配置成功。
第五步:开启注册自动发送邮件
5.1:开启注册自动发送邮件
5.2:开启public角色发送邮件权限
5.3:修改注册邮件模板
5.4:测试注册接口
调用注册接口,你使用postman测试、swagger、自己服务器都可以
http://localhost:1337/api/auth/local/register
调用成功会收到一封邮件以及在user表中有一条记录,未确认之前comfirmed字段是false
确认之后,字段状态改变为true,并且自动跳转到我们5.1步设置的url中。
小结
- 下载插件
- 配置邮箱的授权码
- 配置插件文件
- 配置发送邮件和注册接口的权限
- 配置注册邮件模板的发送账号
- 开启注册发送邮件