使用 gomail 发送邮件

gomail 是一个用于发送电子邮件的简单且高效的第三方开源库, 目前只支持使用SMTP服务发送电子邮件, 但是其API较为灵活, 如果其他定制需求, 则可以轻易地借助其实现.

Demo

package main

import (
	"crypto/tls"
	"gopkg.in/gomail.v2"
	"log"
)

type SMTPInfo struct {
    
    
	Host string
	Port	int
	IsSSL bool
	UserName string
	Password string
	From string
}

func main() {
    
    

	info := &SMTPInfo{
    
    
		Host:     "smtp.qq.com",
		Port:     465,
		IsSSL:    false,
		UserName: "[email protected]",
		Password: "zjtdptrhsiyudgca",
		From:     "[email protected]",
	}

	message := gomail.NewMessage()
	message.SetHeader("From", info.From)
	message.SetHeader("To", "[email protected]")
	//设置主体
	message.SetHeader("Subject", "hello")
	//设置正文
	message.SetBody("text/html", "dear Li, how are you?")

	dialer := gomail.NewDialer(info.Host, info.Port, info.UserName, info.Password)

	dialer.TLSConfig = &tls.Config{
    
    InsecureSkipVerify: true}

	err := dialer.DialAndSend(message)
	if err != nil {
    
    
		log.Printf("邮件发送失败 %v", err)
		return
	}
	log.Println("ok")
}

猜你喜欢

转载自blog.csdn.net/weixin_45867397/article/details/120597068