发邮箱小程序PHP,巧用小程序·云开发实现邮件发送功能丨实战

先看效果图:

1460000020151412?w=1240&h=1009

通过上面的日志,可以看出我们是158开头的邮箱给250开头的邮箱发送邮件,下面是成功接收到的邮件。

1460000020151413?w=1240&h=481

准备工作

1、qq邮箱一个

2、开通你的qq邮箱的授权码(会具体讲解)

3、注册自己的小程序(因为只有注册的小程序才能使用云开发)

4、电脑要安装node(会用到npm命令行)

5、编写小程序代码

一、准备一个QQ邮箱,并启动SMTP服务

进入qq邮箱以后:

1、点击设置,然后点击账户

1460000020151414?w=1222&h=476

2、开启POP3/SMTP服务,获取授权码

1460000020151415?w=1240&h=874

具体操作可以看官方文档,官方文档有具体的讲解,这里我就不多说了。

官方文档:https://dwz.cn/SJCibDEi

我们获取的授权码如下图。请保存好这个授权码,我们后面发送邮件时会用到。

1460000020151416?w=1002&h=634

二、注册小程序获取appid,创建一个小程序

关于小程序的注册和创建就不在此赘述,有需要的同学可以参照官方文档:

下图是我们创建好的小程序。

1460000020151417?w=1240&h=691

代码很简单,就只有一个页面,页面上就一个按钮,我们点击这个按钮的时候实现邮件的发送。

三、初始化云开发,创建发送邮件的云函数

关于云开发初始化我这里也不在做具体讲解了,感兴趣或者不会的同学,可以去翻看腾讯云云开发公众号内菜单【技术交流-视频教程】中的教学视频。

初始化云开发环境时,需要注意以下几点:

1、一定要是注册的小程序有appid才可以使用云开发

2、一定要在app.js里初始化云开发环境id

1460000020151418?w=1070&h=508

3、在project.config.json里配置云函数目录,如下图箭头所示

1460000020151419?w=1240&h=598

四、创建云函数 sendEmail

1、右键cloud文件,新建云函数:

1460000020151420?w=616&h=384

这个函数名你可以随便起,只要是英文,并且调用的时候记得不要写错就行。我这里就用sendEmail。

2、创建完以后,右键sendEmail选择在终端里打开:

1460000020151421?w=854&h=908

这里我们需要用npm安装一个依赖包 nodemailer 使用npm安装依赖包需要用到node,至于node的安装大家自行百度,一大堆的讲解文章。

3、在打开的命令行窗口里输入 npm install nodemailer:

1460000020151422?w=1038&h=414

4、等待 nodemailer类库的安装

1460000020151423?w=908&h=194

5、安装成功时,您能看到nodemailer的版本号

1460000020151424?w=858&h=370

五、编写发送邮件的核心代码

这里一定要注意填写你自己的qq邮箱的授权码:

1460000020151425?w=1240&h=918

代码里都有注释,直接把代码给大家贴出来。

const cloud = require('wx-server-sdk')

cloud.init()

//引入发送邮件的类库

var nodemailer = require('nodemailer')

// 创建一个SMTP客户端配置

var config = {

host: 'smtp.qq.com', //网易163邮箱 smtp.163.com

port: 465, //网易邮箱端口 25

auth: {

user: '1587072557@qq.com', //邮箱账号

pass: '这里要填你自己的授权码' //邮箱的授权码

}

};

// 创建一个SMTP客户端对象

var transporter = nodemailer.createTransport(config);

// 云函数入口函数

exports.main = async(event, context) => {

// 创建一个邮件对象

var mail = {

// 发件人

from: '来自小石头 <1587072557@qq.com>',

// 主题

subject: '来自小石头的问候',

// 收件人

to: '2501902696@qq.com',

// 邮件内容,text或者html格式

text: '你好啊,编程小石头' //可以是链接,也可以是验证码

};

let res = await transporter.sendMail(mail);

return res;

}

六、上传云函数

编写完代码后,一定要记得上传云函数。

1460000020151426?w=1092&h=730

七、调用云函数发送邮件

我们在index.wxml文件里写一个按钮,当点击这个按钮时就发送邮件。

1460000020151427?w=1240&h=597

然后在index.js里调用我们的sendEmail云函数。

1460000020151428?w=1214&h=686

八、点击发送邮件,查看效果

可以看到我们的控制台,打印里发送成功的日志信息:

1460000020151429?w=1240&h=944

然后到我们的邮箱里,可以看到新收到的邮件。

1460000020151430?w=1240&h=425

到这里我们就完整的实现了微信小程序云开发使用云函数发送邮件的功能了。是不是很简单呢?

源码地址:

如果你有关于使用云开发CloudBase相关的技术故事/技术实战经验想要跟大家分享,欢迎留言联系我们哦~比心!

bVbvYOq?w=257&h=274

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值