国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Golang > 正文

golang實現通過smtp發送電子郵件的方法

2020-04-01 19:10:10
字體:
來源:轉載
供稿:網友

本文實例講述了golang實現通過smtp發送電子郵件的方法。分享給大家供大家參考,具體如下:

今天寫了一個公司的郵件發送后臺服務,php只需要把郵件存入數據庫,然后golang寫的mailservice就會吧郵件發送出去.這個公司的代碼就不發出來的,以為帶有公司的業務邏輯,我把代碼整理了一下發布出來供大家參考.呵呵

復制代碼 代碼如下:
package main
import (
    "fmt"
    "net/mail"
    "net/smtp"
    "encoding/base64"
)
func main() {
    b64 := base64.NewEncoding("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/")
    host := "smtp.mail.com"
    email := "mail1@mail.com"
    password := "password"
    toEmail := "mail2@mail.com"
    from := mail.Address{"發送人", email}
    to := mail.Address{"接收人", toEmail}
    header := make(map[string]string)
    header["From"] = from.String()
    header["To"] = to.String()
    header["Subject"] = fmt.Sprintf("=?UTF-8?B?%s?=", b64.EncodeToString([]byte("郵件標題2")))
    header["MIME-Version"] = "1.0"
    header["Content-Type"] = "text/html; charset=UTF-8"
    header["Content-Transfer-Encoding"] = "base64"
    body := "我是一封電子郵件!golang發出.";
    message := ""
    for k, v := range header {
        message += fmt.Sprintf("%s: %s/r/n", k, v)
    }
    message += "/r/n" + b64.EncodeToString([]byte(body))
    auth := smtp.PlainAuth(
        "",
        email,
        password,
        host,
    )
    err := smtp.SendMail(
        host+":25",
        auth,
        email,
        []string{to.Address},
        []byte(message),
    )
    if err != nil {
        panic(err)
    }
}

 

希望本文所述對大家Go語言程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新郑市| 安庆市| 林口县| 曲靖市| 林甸县| 遵化市| 禹城市| 方正县| 高淳县| 沙湾县| 昌乐县| 平遥县| 太和县| 桑植县| 汽车| 讷河市| 乌拉特中旗| 长岛县| 海丰县| 舟山市| 乌拉特后旗| 延吉市| 奉化市| 秦安县| 汶上县| 彰化县| 兖州市| 汉源县| 台南市| 望奎县| 永城市| 凯里市| 建水县| 西畴县| 商洛市| 和平县| 伊宁县| 武义县| 乌兰县| 交城县| 弥勒县|