修复发送邮件错误导致程序停止

This commit is contained in:
junleea 2024-11-27 11:28:23 +08:00
parent 16ab36261e
commit 268d646d71
2 changed files with 15 additions and 2 deletions

View File

@ -247,6 +247,12 @@ func ScanDeviceStatus() {
} }
func SendMail(title, content string) { func SendMail(title, content string) {
//捕获异常
defer func() {
if err := recover(); err != nil {
fmt.Errorf("tool send mail error: %s", err)
}
}()
// TODO // TODO
// 发送邮件 // 发送邮件
// 邮件内容 // 邮件内容

View File

@ -2,7 +2,6 @@ package worker
import ( import (
"fmt" "fmt"
"log"
"net/smtp" "net/smtp"
) )
@ -15,6 +14,13 @@ type MyEmail struct {
} }
func (e *MyEmail) Send(title, content string, toEmail []string) error { func (e *MyEmail) Send(title, content string, toEmail []string) error {
//捕获异常
defer func() {
if err := recover(); err != nil {
fmt.Errorf("MyEmail send mail error: %s", err)
}
}()
// 设置邮件头部 // 设置邮件头部
header := make(map[string]string) header := make(map[string]string)
header["From"] = e.SmtpUserName header["From"] = e.SmtpUserName
@ -31,7 +37,8 @@ func (e *MyEmail) Send(title, content string, toEmail []string) error {
// 发送邮件 // 发送邮件
err := smtp.SendMail(e.SmtpHost, smtp.PlainAuth("", e.SmtpUserName, e.SmtpPassword, "pop.qq.com"), e.SmtpUserName, toEmail, []byte(message)) err := smtp.SendMail(e.SmtpHost, smtp.PlainAuth("", e.SmtpUserName, e.SmtpPassword, "pop.qq.com"), e.SmtpUserName, toEmail, []byte(message))
if err != nil { if err != nil {
log.Fatalf("smtp error: %s", err) //log.Fatalf("smtp error: %s", err)
fmt.Errorf("send mail error: %s", err)
} }
return nil return nil