golang实现收发邮件的方法:1、发送方的右键必须开启stmt和pop3通道;2、开启后获得该账户的授权码,代码为【m.SetAddressHeader("Cc", "dan@example.com", "Dan")】。
golang实现收发邮件的方法:
邮件的收发不介绍了,直接上代码了
package main import ( "gopkg.in/gomail.v2" ) func main() { m := gomail.NewMessage() m.SetHeader("From", "xxxxx@qq.com") m.SetHeader("To", "yyyyy@qq.com") //m.SetAddressHeader("Cc", "dan@example.com", "Dan") m.SetHeader("Subject", "Hello!") m.SetBody("text/html", "Hello <b>Bob</b> and <i>Cora</i>!") //m.Attach("/home/Alex/lolcat.jpg") d := gomail.NewDialer("smtp.qq.com", 587, "xxxxx@qq.com", "okbnsnqptzjzfigd") // Send the email to Bob, Cora and Dan. if err := d.DialAndSend(m); err != nil { panic(err) } }
唯一踩到的坑就是password了
对代码种的xxxx和yyyyy账户替换成发送方和接收方后,箭头指向并不是你的登陆密码,而是授权码
使用自定义客户端发放邮件需要以下两个要素:
1. 发送方的右键必须开启stmt和pop3通道,以qq邮箱为例,登陆qq邮箱->设置-账户->开启pop3和stmt服务
2. 开启后会获得该账户的授权码,无需记着,可以通过临时生成.(但好像是长期有效的,建议还是记录一下~)