使用go发送邮件

Gomail介绍

Gomail 是一个简单、高效的发送电子邮件包,它经过良好的测试和记录。 Gomail 只能使用 SMTP 服务器发送电子邮件,但是 API 比较灵活的,很容易实现其他方法使用本地 Postfix、API 等发送电子邮件。

项目地址: https://github.com/go-gomail/gomail
文档:https://godoc.org/gopkg.in/gomail.v2
示例:https://godoc.org/gopkg.in/gomail.v2#example-package

Gomail 支持:

  • 附件
  • 嵌入图像
  • HTML 和文本模板
  • 特殊字符的自动编码
  • SSL 和 TLS
  • 使用相同的 SMTP 连接发送多封电子邮件

使用gomail

下载gomail

1
go get gopkg.in/gomail.v2

代码示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package main

import (
"gopkg.in/gomail.v2"
)

func main() {
m := gomail.NewMessage()
m.SetHeader("From", "xiaoxu@126.com") //发件人
m.SetHeader("To", "xiaoxu@163.com") //收件人
m.SetAddressHeader("Cc", "test@126.com", "test") //抄送人
m.SetHeader("Subject", "Hello!") //邮件标题
m.SetBody("text/html", "使用Go测试发送邮件!") //邮件内容
m.Attach("E:\\IMGP0814.JPG") //邮件附件

d := gomail.NewDialer("smtp.126.com", 465, "xiaoxu@126.com", "1234567")
//邮件发送服务器信息,使用授权码而非密码
if err := d.DialAndSend(m); err != nil {
panic(err)
}
}

0%