Go语言通过smtp发送邮件的示例代码
2018-07-20 来源:open-open
package main import ( "net/smtp" "fmt" "strings" ) /* * user : example@example.com login smtp server user * password: xxxxx login smtp server password * host: smtp.example.com:port smtp.163.com:25 * to: example@example.com;example1@163.com;example2@sina.com.cn;... * subject:The subject of mail * body: The content of mail * mailtyoe: mail type html or text */ func SendMail(user, password, host, to, subject, body, mailtype string) error{ hp := strings.Split(host, ":") auth := smtp.PlainAuth("", user, password, hp[0]) var content_type string if mailtype == "html" { content_type = "Content-Type: text/"+ mailtype + "; charset=UTF-8" }else{ content_type = "Content-Type: text/plain" + "; charset=UTF-8" } msg := []byte("To: " + to + "\r\nFrom: " + user + "<"+ user +">\r\nSubject: " + subject + "\r\n" + content_type + "\r\n\r\n" + body) send_to := strings.Split(to, ";") err := smtp.SendMail(host, auth, user, send_to, msg) return err } func main() { user := "xxxx@163.com" password := "xxxx" host := "smtp.163.com:25" to := "xxxx@gmail.com;ssssss@gmail.com" subject := "Test send email by golang" body := ` <html> <body> <h3> "Test send email by golang" </h3> </body> </html> ` fmt.Println("send email") err := SendMail(user, password, host, to, subject, body, "html") if err != nil { fmt.Println("send mail error!") fmt.Println(err) }else{ fmt.Println("send mail success!") } }
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
最新资讯
热门推荐