beego发邮件服务--邮箱

将用户的信息,存储到数据库中以后,接下来可以给用户发送一封邮件,并且告诉用户只有去邮箱中激活以后,才能进行登录。

给用户发送邮件一个很重要的好处就是,可以判断用户在注册时输入的邮箱是否正确。

只有正确地用户邮箱,才有意义,例如:当我们的网站上架一款新产品时,可以给注册的用户发送邮件,通知其新上架的产品信息。

SMTP服务器就是邮件代收发服务器,由邮件服务商提供,常见的SMTP服务器端口号:
QQ邮箱:SMTP服务器地址:smtp.qq.com(端口:587)
雅虎邮箱: SMTP服务器地址:smtp.yahoo.com(端口:587)
163邮箱:SMTP服务器地址:smtp.163.com(端口:25)
126邮箱: SMTP服务器地址:smtp.126.com(端口:25)
新浪邮箱: SMTP服务器地址:smtp.sina.com(端口:25)

第一:指定发送邮件的配置信息。

config := `{"username":"563364657@qq.com","password":"kufzjehabgesbceb","host":"smtp.qq.com","port":587}`

这里指定了发件人的邮箱名称,对应的发送密码,对应SMTP服务器,以及对应的端口号。

这里我们使用的是QQ的邮箱,所以SMTP服务器指的是QQ的SMTP服务器地址,如果发件人使用的是163的邮箱,这里需要指定的163的SMTP服务器地址:smtp.163.com

第二:根据配置信息,创建一个EMAIL的对象

temail:=utils.NewEMail(config)

第三:通过EMAIL对象中的属性。指定,发件人邮箱,收件人邮箱,邮件标题,以及邮件的内容。

temail.To = []string{user.Email}//指定收件人邮箱地址,就是用户在注册时填写的邮箱地址
temail.From = "563364657@qq.com"//指定发件人的邮箱地址,这里我们使用的QQ邮箱。
temail.Subject = "用户激活"//指定邮件的标题
//指定邮件的内容。该内容发送到用户的邮箱中以后,该用户打开邮箱,可以将该URL地址复制到地址栏中,敲回车键,就会向该指定的URL地址发送请求,我们在该地址对应的方法中,接收该用户的ID,然后根据该Id,查询出用户的信息后,将其对应的一个属性,Active设置为true,表明用户已经激活了,那么用户就可以登录了。
temail.HTML = "复制该连接到浏览器中激活:127.0.0.1:8088/active?id="+strconv.Itoa(user.Id)

第四:发送邮件

调用EMAIL对象中的send方法发送邮件,如果邮件发送失败,给用户相应的提示并且重新返回到注册页面,让用户填写相应的信息,如果邮件发送成功,也要给出相应的提示。

err = temail.Send()
if err != nil{
   this.Data["errmsg"] = "发送激活邮件失败,请重新注册!"
   this.TplName = "register.html"
   return
}

this.Ctx.WriteString("注册成功,请前往邮箱激活!")

发送成功后邮箱显示图下

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值