golang使用“net/smtp“发送邮件

golang发送邮件有多个方法,我选择了其中最简单的一种,下面我来介绍一下

首先我们要引入一个包

import (
	"log"
	"net/smtp"
)

其次我们定义一下使用到常量,这里我们使用的163邮箱,把SMTPUsername和SMTPPassword换成自己的账号密码就可以了,我们也可以使用QQ邮箱(不举例了)

const (
	Host     = "smtp.163.com"
	Port     = ":25"
	Username = "*******@163.com"
	Password = "***************"
)

下面我们就要编写发邮件的代码了 ,可以看到,在代码段里我们用到了一些上边定义的常量。其次,receiver就是收件人的邮箱地址,msg就是你要发送的邮件信息(格式可以按照注释里的写)

func SendEmail(receiver string,msg []byte) {
	auth := smtp.PlainAuth("", Username, Password, Host)
	//msg := []byte("Subject: 这里是标题内容\r\n\r\n" + "这里是正文内容\r\n")
	err := smtp.SendMail(Host+Port, auth, Username, []string{receiver}, msg)
	if err != nil {
		log.Println("failed to send email:", err)
	}
	log.Println(err)
}

后边我们就可以在其他函数调用该方法了,调用示例如下(同一个package下)

msg := []byte("Subject:Learn something every day\r\n\r\n" + "this is content!\r\n")
SendEmail("*********@qq.com",msg)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值