老规矩,先看效果图

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

准备工作


1,qq邮箱一个
2,开通你的qq邮箱的授权码(会具体讲解)
3,注册自己的小程序(因为只有注册的小程序才能使用云开发)
4,电脑要安装node(会用到npm命令行)
5,跟着老师编写小程序代码

一,准备一个qq邮箱,并启动SMTP服务
这个我不做具体讲解了。你进入你的qq邮箱以后,

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


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

具体操作可以看官方文档,官方文档有具体的讲解,这里我就不多说了。
官方文档:https://service.mail.qq.com/cgi-bin/help?subtype=1&&no=1001256&&id=28
我们获取的授权码如下图。这个授权码,我们后面发送邮件时会用到。

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


关于小程序的注册,和创建小程序我就不在做具体讲解,感兴趣的同学或者还不会的同学可以翻看我前面的文章学习,也可以看我的零基础入门小程序的视频:https://edu.csdn.net/course/detail/9531
下图是我们创建好的小程序。

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

三,初始化云开发,创建发送邮件的云函数。
关于云开发初始化我这里也不在做具体讲解了,感兴趣或者不会的同学,可以去看我录制的云开发入门视频:https://edu.csdn.net/course/detail/9604

初始化云开发环境时,有下面几点注意事项给大家说下。
1,一定要是注册的小程序有appid才可以使用云开发
2,一定要在app.js里初始化云开发环境id


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

四,创建云函数 sendEmail
1,右键cloud文件,新建云函数


这个函数名你可以随便起,只要是英文,并且调用的时候记得不要写错就行。我这里就用sendEmail
2,创建完以后,右键sendEmail选择在终端里打开

这里我们需要用npm安装一个依赖包 nodemailer 使用npm安装依赖包需要用到node,至于node的安装大家自行百度,一大堆的讲解文章。
3,在打开的命令行窗口里输入 npm install nodemailer

4,等待 nodemailer类库的安装。

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

五,编写发送邮件的核心代码。
这里一定要注意填写你自己的qq邮箱的授权码

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

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;

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

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

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

八,点击发送邮件,查看效果。
可以看到我们的控制台,打印里发送成功的日志信息

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

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

源码我也已经给大家准备好了。大家先试着自己敲下,看能不能实现,如果实现不了再来找我要源码。

有任何关于小程序相关的问题,也可以加我微信 2501902696(备注小程序)
————————————————
版权声明:本文为CSDN博主「编程小石头」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qiushi_1990/article/details/98660081

小程序发送邮件,小程序云开发使用云函数发送邮件相关推荐

  1. 微信小程序开发13 云开发:云原生一体化应用开发平台

    你好,我是冠宇,从这个模块开始,就由我带着你一起学习. 在开篇词中,俊鹏讲到云开发诞生的背后动力是困扰前端开发者们的一个核心问题:对后端的依赖.那云开发到底怎么去优化和解决这个问题的呢? 这就是我们今 ...

  2. 小程序云开发请求云函数成功,但result为空/null的处理,四种问题处理方法汇总

    小程序云开发请求云函数成功,但result为空的处理方法 大家在测试微信小程序的时候,很多情况会遇到返回为空的状态 1. 第一种问题 方法 Promise 云函数返回的数据使用方法会返回一个 Prom ...

  3. 微信小程序开发与mysql_微信小程序云开发之云数据库入门

    微信小程序云开发之云数据库入门 介绍 开发者可以使用云开发开发微信小程序.小游戏,无需搭建服务器,即可使用云端能力. 其基础能力数据库,是一个JSON数据库,作用是无需自建数据库,就可以在微信小程序前 ...

  4. 微信小程序云开发之云函数使用

    微信小程序云开发之云函数使用 写在前面 最近在做微信小程序的开发工作,遇到了一个需求是由于小程序的每个包有大小限制,在某一些需要使用插件的情况下,使得包的体积超出限制,因此考虑一种将运算逻辑放在云端的 ...

  5. 微信小程序云开发之云数据库入门

    微信小程序云开发之云数据库入门 介绍 开发者可以使用云开发开发微信小程序.小游戏,无需搭建服务器,即可使用云端能力. 其基础能力数据库,是一个JSON数据库,作用是无需自建数据库,就可以在微信小程序前 ...

  6. 微信小程序云开发之云函数的调用

    本篇讲述微信小程序云开发之云函数的调用 下面是小程序云函数的根文件夹 如果我们想要查看当前开发云函数的使用情况,直接在我们的云开发控制台进行查看即可 新建云函数: 鼠标右键点击cloudfunctio ...

  7. 小程序云开发之云函数的使用

    小程序云开发之云函数的使用 1.云函数 1.1 云函数API和云函数创建 1.1.1 小程序云函数API接口 1.1.2 云函数的创建 2.云函数案例 1.云函数   云函数是部署在云端的函数,他和小 ...

  8. 什么是云开发?云开发与传统开发的对比

    目录 云开发简介 前言 什么是云? 云开发是什么? 云开发 云服务 云开发的优势 云开发与传统开发 云开发家族 微信小程序·云开发 腾讯云·云开发 qq小程序·云开发 参考资料 云开发简介 前言 在了 ...

  9. 微信小程序云开发之云数据库

    本篇讲述微信小程序云开发中的云数据库 云开发提供了一个JSON数据库(文档型数据库),提供2GB免费存储空间,这个JSON数据库不同于传统的关系型数据库. 传统的关系型数据库像我们的excel表格一样 ...

最新文章

  1. Git-将已有的项目转换为GIT项目托管到 GITHUB 仓库
  2. linux函数地址获取函数名,函数名/函数地址/函数指针
  3. PAT 乙级1005
  4. php 后端刷新页面
  5. 导入文件按钮_如何将PPT软件功能配置导入另一台电脑
  6. 关于Stringbuffer的需要注意的几点
  7. windows系统注册dll文件
  8. 星空软件 linux,使用了Stellarium App,才发现星空摄影如此简单
  9. psd导出jpg太大_为什么 Ps 导出的 jpg 图片哪怕质量降到最低还是体积很大?
  10. QT视频采集之编码Enc和录像Rec
  11. Zemax操作25--像差理论和修正(球差、慧差、像散)
  12. echarts绘制地理坐标/地图
  13. 商城店铺入驻系统_商家入驻开设店铺功能逻辑与流程设计
  14. 中介者(Mediator)
  15. Arduino 实现物理非自锁按键触发变为软件上自锁状态保持控制方法
  16. 3分钟学会制作动态折线图!
  17. 计算机毕业设计Java教师继续教育(源码+系统+mysql数据库+lw文档)
  18. android magic xposed,安卓9.0刷入Magisk和Xposed具体步骤
  19. Window Server2012 安装ASPupload记录
  20. 关于MIPS平台的asid_cache debug的总结

热门文章

  1. 小内存堆管理算法详细解析
  2. 博弈论(van♂游戏) 笔记
  3. 饮用水安全与水资源保护
  4. 【唐诗学习】一、古诗概述
  5. 省份三级联动+模糊查询+省份单表增删改查
  6. 使用 git add -p 整理 patch
  7. 00 引言:你想谈一场恋爱吗?
  8. 基于微信小程序的兼职发布接单系统
  9. [Python]网站数据爬取任务
  10. python中x%y是什么意思_python是什么