mail.go 726 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package mail
  2. import (
  3. "strings"
  4. "gopkg.in/gomail.v2"
  5. )
  6. type Options struct {
  7. MailHost string
  8. MailPort int
  9. MailUser string // 发件人
  10. MailPass string // 发件人密码
  11. MailTo string // 收件人 多个用,分割
  12. Subject string // 邮件主题
  13. Body string // 邮件内容
  14. }
  15. func Send(o *Options) error {
  16. m := gomail.NewMessage()
  17. //设置发件人
  18. m.SetHeader("From", o.MailUser)
  19. //设置发送给多个用户
  20. mailArrTo := strings.Split(o.MailTo, ",")
  21. m.SetHeader("To", mailArrTo...)
  22. //设置邮件主题
  23. m.SetHeader("Subject", o.Subject)
  24. //设置邮件正文
  25. m.SetBody("text/html", o.Body)
  26. d := gomail.NewDialer(o.MailHost, o.MailPort, o.MailUser, o.MailPass)
  27. return d.DialAndSend(m)
  28. }