您的位置:首页 > 编程语言 > Go语言

golang-发送邮件

2015-08-20 20:58 435 查看
亲测可用
package mainimport (m "chUtils/mail""fmt")func main() {email := m.NewEmail("305860361@qq.com", "测试主题", "测试了")err := m.SendEmail(email)if err != nil {fmt.Print(err)}}
<pre name="code" class="csharp">package mailimport ("fmt""net/smtp""strings")const (HOST        = "smtp.163.com"SERVER_ADDR = "smtp.163.com:25"USER        = "a15207146487@163.com" //发送邮件的邮箱PASSWORD    = "iadblvahqephdpzl"     //发送邮件邮箱的密码)type Email struct {to      string "to"subject string "subject"msg     string "msg"}func NewEmail(to, subject, msg string) *Email {return &Email{to: to, subject: subject, msg: msg}}func SendEmail(email *Email) error {auth := smtp.PlainAuth("", USER, PASSWORD, HOST)sendTo := strings.Split(email.to, ";")done := make(chan error, 1024)go func() {defer close(done)for _, v := range sendTo {str := strings.Replace("From: "+USER+"~To: "+v+"~Subject: "+email.subject+"~~", "~", "\r\n", -1) + email.msgerr := smtp.SendMail(SERVER_ADDR,auth,USER,[]string{v},[]byte(str),)done <- err}}()for i := 0; i < len(sendTo); i++ {fmt.Println(<-done)}return nil}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: