Golang 发送邮件

Golang 发送邮件

关键词:mail send golang go 邮件 发送 编程


使用到的开源组件

gomail https://github.com/go-gomail/gomail

代码

func SendMail() {
   m := gomail.NewMessage()
   m.SetAddressHeader("From", "sender@163.com", "Sender")  // 发件人邮箱,发件人名称
   m.SetHeader("To",  // 收件人
      m.FormatAddress("receiver@qq.com", "Receiver"),
   )
   m.SetHeader("Subject", "subject")  // 主题
   m.SetBody("text/plain", "text")  // 正文


   d := gomail.NewDialer("smtp.163.com", 25, "sender@163.com", "senderEmailPassword")  // 发送邮件服务器、端口、发件人账号、发件人密码
   if err := d.DialAndSend(m); err != nil {
      log.Println("send mail err:", err)
   }
}

常用邮箱和端口

列举一些常用的邮箱,可以用来测试:

QQ 邮箱

POP3 服务器地址:qq.com(端口:995)

SMTP 服务器地址:smtp.qq.com(端口:465/587)

163 邮箱:

POP3 服务器地址:pop.163.com(端口:110)

SMTP 服务器地址:smtp.163.com(端口:25)

126 邮箱:

POP3 服务器地址:pop.126.com(端口:110)

SMTP 服务器地址:smtp.126.com(端口:25)


开启邮箱服务

出于邮箱安全的考虑,很多邮箱缺省是关闭 POP3/SMTP 服务的,需要登录邮箱设置后开启。

以 QQ 邮箱为例,进入邮箱“设置”,在“帐户”项里就可找到“POP3/SMTP服务”的设置项,进行开启。

**温馨提示:**登录第三方客户端时,密码框请输入“授权码”进行验证。

也就是说,在使用 QQ 邮箱发送邮件的时候,需要使用授权码,而不是 QQ 密码!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值