go发送邮件

idwtwt · · 4453 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

1.获取Go邮件库(自带发送不了)

go get  gopkg.in/gomail.v1


2.包含库

import (

	"gopkg.in/gomail.v1"
)

3.例子

//info.From:发件地址或账号
//to:  收件地址
//body:邮件内容
//port:邮件服务器端口
//info.Host:邮件服务器地址
//info.Password:密码
func GoMail(to, body string) error {
	info, err := MailInfoGet()
	if err != nil {
		beego.Error("Get Mail Config Err:", err)
		return err
	}
	if info.Host == "" || info.Port == "" || info.From == "" || info.Password == "" || info.Header == "" || info.Footer == "" {
		beego.Error("Pleaase Finish Mail Config!")
		return nil
	}
	port, _ := strconv.Atoi(info.Port)

	msg := gomail.NewMessage()
	msg.SetHeader("From", info.From)
	msg.SetHeader("To", to)
	//  msg.SetAddressHeader("Cc", "dan@example.com", "Dan")
	msg.SetHeader("Subject", info.Header)
	msg.SetBody("text/html", body)

	//
	mailer := gomail.NewMailer(info.Host, info.From, info.Password, port)
	if err := mailer.Send(msg); err != nil {
		beego.Error("Has err:", err)
		return err
	}
	return nil
}



有疑问加站长微信联系(非本文作者)

本文来自:CSDN博客

感谢作者:idwtwt

查看原文:go发送邮件

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

4453 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传