golang 实现发送附件到邮箱

  • Post author:
  • Post category:golang


package main

import (

“crypto/tls”

“flag”

“fmt”

“myGo/utils”



github.com/go-gomail/gomail”

)

//发送

func send() {

nm := gomail.NewMessage()

nm.SetHeader(“From”, ”

xxxx@qq.com

“)

nm.SetHeader(“To”, ”

xxxx@qq.com

“)

//抄送

nm.SetAddressHeader(”

xxxx@qq.com

“, ”

xxxx@qq.com

“, “xxxx”)

//主题

nm.SetHeader(“Subject”, “xxxx”)

//正文

nm.SetBody(“text/html”, “xxxx”)

//所有附件

nm.Attach(“E:/xxxx.doc”)

nm.Attach(“E:/xxxx.JPG”)

nm.Attach(“E:/xxxx.JPG”)

nm.Attach(“E:/xxxx.JPG”)

nm.Attach(“E:/xxxx.JPG”)

nm.Attach(“E:/xxxx .JPG”)

nm.Attach(“E:/xxxx.JPG”)

//ikfrnpwowsqgbibf:pop3密钥,

374290910@qq.com

为发件人

nd := gomail.NewDialer(”

smtp.qq.com

“, 587, ”

374290910@qq.com

“, “ikfrnpwowsqgbibf”)

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

if err := nd.DialAndSend(nm); err != nil {

fmt.Println(“************发送邮件出错:*************”, err)

} else {

fmt.Println(“******************发送附件邮件成功*****************”)

fmt.Println(“***************邮件服务器:

smtp.qq.com

******************”)

fmt.Println(“************邮件发件人:************”)

fmt.Println(“************邮件收件人:************”)

fmt.Println(“************邮件主题:************”)

fmt.Println(“************邮件内容:************”)

fmt.Println(“邮件附件:”)

}

}

func main() {

var stime string

//这里是我的需求为定时发送

flag.StringVar(&stime, “stime”, “30 30 11 25 2021 2”, “定时时间表达式 * * * * * ?”)

flag.Parse()

fmt.Println(“开始发送邮件时间:”, stime)

utils.NewCrond(stime, send)

}



版权声明:本文为weixin_52294845原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。