当前访客身份:游客 [ 登录 | 加入开源中国 ]

代码分享

当前位置:
代码分享 » Google Go  » 网络编程
余风11

golang 发送邮件

余风11 发布于 2012年07月20日 0时, 8评/5099阅
分享到: 
收藏 +0
2
golang 发送邮件
标签: <无>

代码片段(1) [全屏查看所有代码]

1. [文件] mail.go ~ 1KB     下载(68)     跳至 [1] [全屏预览]

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!")
	}

}


开源中国-程序员在线工具:Git代码托管 API文档大全(120+) JS在线编辑演示 二维码 更多»

发表评论 回到顶部 网友评论(8)

  • 1楼:苗永超 发表于 2012-07-20 18:54 回复此评论
    这个应该怎么用?
  • 2楼:Jason阿坚 发表于 2012-09-27 21:18 回复此评论
    写死再程序里。
  • 3楼:Jason阿坚 发表于 2012-09-27 21:18 回复此评论
    写死再程序里。
  • 4楼:chenghao 发表于 2012-12-14 16:57 回复此评论
    good
  • 5楼:野草 发表于 2013-03-15 14:37 回复此评论
    我怎么报错?502
  • 6楼:J_win 发表于 2014-04-22 16:00 回复此评论
    标题为中文时网易退信的呀
  • 7楼:Doer 发表于 2014-12-05 10:58 回复此评论
    subject中文时乱码
  • 8楼:sdvdxl 发表于 2015-11-01 15:11 回复此评论
    好用