goEmail发送邮件

使用gopkg.in/gomail.v2,发送邮件

func SendMail(mailTo []string,subject string, body string ) error {
   mailConn := map[string]string {
      "user": "xxxxxx@xxx.com",
      "pass": "xxxxx",
      "host": "smtp.xx.com",
      "port": "465",
   }

   port, _ := strconv.Atoi(mailConn["port"]) 
   m := gomail.NewMessage()
   m.SetHeader("From",mailConn["user"])
   //发送给多个用户
   m.SetHeader("To", mailTo...)
   //设置邮件主题
   m.SetHeader("Subject", subject)
   //设置邮件正文
   m.SetBody("text/html", body)

   d := gomail.NewDialer(mailConn["host"], port, mailConn["user"], mailConn["pass"])
   err := d.DialAndSend(m)
   return err
}

注意:

  1. 配置mailConn时,如果是163或者qq的邮箱的话首先需要开通smtp支持 pass填的就是授权码;企业邮箱的话可以填密码;
  2. mailConn中的user是发送者邮箱账号
  3. mailConn中的host指SMTP服务的域名;163邮箱的smtp host是smtp.163.com;qq邮箱的smtp host是smtp.qq.com;具体host可以自行百度查找;
  4. SetHeader()可以设置发送者的别名;也可以省略别名的设置;设置别名:m.SetHeader("From","other Name" + "<" + mailConn["user"] + ">")
  5. m.SetHeader()可以设置发送方为多个,以切片的方式传入;
func main()  {
   //定义收件人,可以群发
   mailTo := []string {
      "xxxxx@xxx.com",
   }
   //设置邮件主题
   subject := "Hello"
   // 邮件正文
   body := "Nice to meet you!"
   err := SendMail(mailTo, subject, body)
   if err != nil {
      println(err.Error())
   }
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值