修改第三方email包,pool修改为tls模式,否则腾讯企业邮箱无法发送

renzheng 25abf26c59 init 3 سال پیش
.github 75e5cc8f51 Create test.yml 5 سال پیش
.gitignore fd8a762230 Format From, To, Cc & Bcc for RFC1342 (#115) 5 سال پیش
.travis.yml 52b567308c Use the latest Go release (#76) 6 سال پیش
LICENSE 88f678d9c1 Initial commit 11 سال پیش
README.md f0c364f2e0 Readme: add missing "go" code block marker (#78) 6 سال پیش
email.go 943e75fe52 Adds support for text/html with base64 CTE (#138) 4 سال پیش
email_test.go 943e75fe52 Adds support for text/html with base64 CTE (#138) 4 سال پیش
go.mod 25abf26c59 init 3 سال پیش
pool.go 9b216d2e60 init 3 سال پیش

README.md

email

Build Status GoDoc

Robust and flexible email library for Go

Email for humans

The email package is designed to be simple to use, but flexible enough so as not to be restrictive. The goal is to provide an email interface for humans.

The email package currently supports the following:

  • From, To, Bcc, and Cc fields
  • Email addresses in both "test@example.com" and "First Last <test@example.com>" format
  • Text and HTML Message Body
  • Attachments
  • Read Receipts
  • Custom headers
  • More to come!

Installation


*Note: Version > 1 of this library requires Go v1.5 or above.*

*If you need compatibility with previous Go versions, you can use the previous package at gopkg.in/jordan-wright/email.v1*

### Examples
#### Sending email using Gmail

go e := email.NewEmail() e.From = "Jordan Wright test@gmail.com" e.To = []string{"test@example.com"} e.Bcc = []string{"test_bcc@example.com"} e.Cc = []string{"test_cc@example.com"} e.Subject = "Awesome Subject" e.Text = []byte("Text Body is, of course, supported!") e.HTML = []byte("

Fancy HTML is supported, too!

") e.Send("smtp.gmail.com:587", smtp.PlainAuth("", "test@gmail.com", "password123", "smtp.gmail.com"))


#### Another Method for Creating an Email
You can also create an email directly by creating a struct as follows:

go e := &email.Email {

To: []string{"test@example.com"},
From: "Jordan Wright <test@gmail.com>",
Subject: "Awesome Subject",
Text: []byte("Text Body is, of course, supported!"),
HTML: []byte("<h1>Fancy HTML is supported, too!</h1>"),
Headers: textproto.MIMEHeader{},

}


#### Creating an Email From an io.Reader
You can also create an email from any type that implements the ```io.Reader``` interface by using ```email.NewEmailFromReader```.

#### Attaching a File

go e := NewEmail() e.AttachFile("test.txt")


#### A Pool of Reusable Connections

go (var ch <-chan *email.Email) p := email.NewPool(

"smtp.gmail.com:587",
4,
smtp.PlainAuth("", "test@gmail.com", "password123", "smtp.gmail.com"),

) for i := 0; i < 4; i++ {

go func() {
    for e := range ch {
        p.Send(e, 10 * time.Second)
    }
}()

} ```

Documentation

http://godoc.org/github.com/jordan-wright/email

Other Sources

Sections inspired by the handy gophermail project.

Contributors

I'd like to thank all the contributors and maintainers of this package.

A special thanks goes out to Jed Denlea jeddenlea for his numerous contributions and optimizations.