介绍
小编给大家分享一下golang如何实现发送邮件,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!
前期准备
golang发送邮件的功能,我们今天介绍golang发送qq邮件,相信大家都有qq邮箱吧,操作起来比较便捷,使用golang发送邮件更是简单,相信大家看完都能上手操作并学会。
通过编码的方式发送邮件,即实际是调用qq邮箱提供的接口来进行邮件的发送,我们在编写该功能前,需要拿到qq邮箱的POP3和SMTP服务的授权码
- <李>
进入自己的qq邮箱→设置→账户→往下滑
李>
- <李>
开启自己qq邮箱的POP3和SMTP服务,并拿到自己qq邮箱的授权码(支持临时生成),授权码长期有效建议保存
李>代码编写
package mainimport ( ,才能“fmt" ,才能“gopkg.in/gomail.v2") func 主要(),{ ,,m :=, gomail.NewMessage () ,,//发送人 ,,m.SetHeader (“From",,“xxx@qq.com") ,,//接收人 ,,m.SetHeader (“To",,“xxx@qq.com") ,,//抄送人 ,,//m.SetAddressHeader (“Cc",,“xxx@qq.com",,“xiaozhujiao") ,,//主题 ,,m.SetHeader (“Subject",,“小佩奇“) ,,//内容 ,,m.SetBody(“文本/html",,“& lt; h2>新年快乐& lt;/h2>“) ,,//附件 ,,//m.Attach (“。/myIpPic.png") ,,//拿到令牌,并进行连接,第4个参数是填授权码 ,,d :=, gomail.NewDialer (“smtp.qq.com",, 587年,“xxx@qq.com",,“xxxxxx")//,,,发送邮件 ,,if err :=, d.DialAndSend (m);, err !=, nil { ,,,,,fmt.Printf (“DialAndSend  err % v:“,,呃) ,,,,,恐慌(err) ,,} ,,fmt.Printf (“send  mail 成功\ n")}
效果展示