巧用小程序·云开发实现邮件发送功能丨实战
先看效果圖:
通過上面的日志,可以看出我們是158開頭的郵箱給250開頭的郵箱發送郵件,下面是成功接收到的郵件。
準備工作
- 1、qq郵箱一個
- 2、開通你的qq郵箱的授權碼(會具體講解)
- 3、注冊自己的小程序(因為只有注冊的小程序才能使用云開發)
- 4、電腦要安裝node(會用到npm命令行)
- 5、編寫小程序代碼
一、準備一個QQ郵箱,并啟動SMTP服務
進入qq郵箱以后:
1、點擊設置,然后點擊賬戶
2、開啟POP3/SMTP服務,獲取授權碼
具體操作可以看官方文檔,官方文檔有具體的講解,這里我就不多說了。
官方文檔:https://dwz.cn/SJCibDEi
我們獲取的授權碼如下圖。請保存好這個授權碼,我們后面發送郵件時會用到。
二、注冊小程序獲取appid,創建一個小程序
關于小程序的注冊和創建就不在此贅述,有需要的同學可以參照官方文檔:
https://dwz.cn/HpcWynVz
下圖是我們創建好的小程序。
代碼很簡單,就只有一個頁面,頁面上就一個按鈕,我們點擊這個按鈕的時候實現郵件的發送。
三、初始化云開發,創建發送郵件的云函數
關于云開發初始化我這里也不在做具體講解了,感興趣或者不會的同學,可以去翻看騰訊云云開發公眾號內菜單【技術交流-視頻教程】中的教學視頻。
初始化云開發環境時,需要注意以下幾點:
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.comport: 465, //網易郵箱端口 25auth: {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云函數。
八、點擊發送郵件,查看效果
可以看到我們的控制臺,打印里發送成功的日志信息:
然后到我們的郵箱里,可以看到新收到的郵件。
到這里我們就完整的實現了微信小程序云開發使用云函數發送郵件的功能了。是不是很簡單呢?
源碼地址:
https://github.com/TencentCloudBase/Good-practice-tutorial-recommended
如果你有關于使用云開發CloudBase相關的技術故事/技術實戰經驗想要跟大家分享,歡迎留言聯系我們哦~比心!
轉載于:https://www.cnblogs.com/CloudBase/p/11393852.html
總結
以上是生活随笔為你收集整理的巧用小程序·云开发实现邮件发送功能丨实战的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++总结笔记(一)—— 基础知识汇总
- 下一篇: C++总结笔记(二)——指针