Go语言通过smtp发送邮件的方法
2018-09-24 21:25
本文实例讲述了Go语言通过smtp发送邮件的方法。分享给大家供大家参考。具体实现方法如下:
复制代码 代码如下:package main
import (
net/smtp
fmt
strings
)
/*
*password: xxxxx login smtp server password
* 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!)
}
}
希望本文所述对大家的Go语言程序设计有所帮助。
上一篇:GO语言获取系统环境变量的方法
下一篇:GO语言实现简单TCP服务的方法