学习时候发现的问题,记录一下
发送邮件用的简单的gomail
func MailTest(c *gin.Context) {
msg := mail.NewMessage()
msg.SetHeader("From", "*****@163.com")
msg.SetHeader("To", "******@qq.com")
msg.SetHeader("Subject", "测试邮件")
msg.SetBody("text/html", "<b>发送信息给烽哥</b>")
// msg.Attach("/home/User/cat.jpg")
n := mail.NewDialer("smtp.163.com", 25, "*****@163.com", "*******")
// Send the email
if err := n.DialAndSend(msg); err != nil {
panic(err)
}
c.JSON(http.StatusOK, gin.H{
"MSG": "already send the mail",
})
}
这个问题翻译过来就是mail的来源方和授权账户必须相同,也就是这个mail.NewDialer中的第三个参数和From的那个邮箱必须一致(我原先以为这个拨号中的第三个参数指的是收件方)