<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Go語言庫系列之email

      導讀

      大家好我是平也,今天跟大家介紹一款用來發送郵件的Go語言庫email,目前星星1.3k,非常好用。

      極速上手

      準備工作

      初始化項目

      go get github.com/jordan-wright/email
      

      本示例項目結構

      .
      ├── go.mod
      ├── go.sum
      └── main.go
      

      開啟郵箱SMTP服務,以163郵箱為例,需要先登錄到郵箱后臺點擊開啟按鈕,在發送完短信之后,會獲取到一個授權碼,將授權碼保存,后面需要用到。

      file

      file

      代碼示例

      首先配置好郵件內容

      e := email.NewEmail()
      e.From = "平也<pingyeaa@163.com>"
      e.To = []string{"602588122@qq.com"}
      e.Subject = "發現驚天大秘密!"
      e.Text = []byte("平也好帥好有智慧哦~")
      
      • From:發件人郵箱,格式為“名稱+<郵箱>”,也可以直接寫郵箱,默認顯示的發件人為@符號前的名稱
      • To:收件人郵箱地址
      • Subject:郵件標題
      • Text:郵件正文

      調用Send方法發送郵件,第一個參數是你的發件人郵箱的SMTP域名+端口號,第二個參數用于身份認證

      e.Send("smtp.163.com:25", smtp.PlainAuth("", "pingyeaa@163.com", "<你的密碼>", "smtp.163.com"))
      

      smtp.PlainAuth

      • 參數1:通常,identity應該是空字符串,以用作用戶名。
      • 參數2:用戶名
      • 參數3:密碼,如果拿到了授權碼,則填寫授權碼
      • 參數4:服務器地址,163的地址是smtp.163.com,其他平臺可自行查看

      完整代碼如下

      package main
      
      import (
      	"net/smtp"
      
      	"github.com/jordan-wright/email"
      )
      
      func main() {
      	e := email.NewEmail()
      	//e.From = "pingyeaa@163.com"
      	e.From = "平也 <pingyeaa@163.com>"
      	e.To = []string{"xxxxxx@qq.com"}
      	e.Subject = "發現驚天大秘密!"
      	e.Text = []byte("平也好帥好有智慧哦~")
      	err := e.Send("smtp.163.com:25", smtp.PlainAuth("", "pingyeaa@163.com", "KQHQCZSXQWPDZYRF", "smtp.163.com"))
      	if err != nil {
      		panic(err)
      	}
      }
      

      拓展

      CC與BCC

      CC全稱是Carbon Copy,意為抄送,BCC全稱Blind Carbon Copy,意為暗抄送,收件人看不到被暗抄送給了誰。

      e := email.NewEmail()
      e.Cc = []string{"xxxxxxx@qq.com"}
      e.Bcc = []string{"xxxxxxx@qq.com"}
      

      另一種初始化方式

      可以實例化的時候直接賦值

      e := &email.Email{
        From:    "平也 <pingyeaa@163.com>",
        To:      []string{"xxxxxxx@qq.com"},
        Subject: "發現驚天大秘密!",
        Text:    []byte("平也好帥好有智慧哦~"),
      }
      

      發送附件

      發送附件非常簡單,直接傳入文件名即可

      e.AttachFile("attachment.txt")
      

      也可以調用Attach自行實現附件發送,AttachFile其實就是對Attach的封裝

      func (e *Email) AttachFile(filename string) (a *Attachment, err error) {
      	f, err := os.Open(filename)
      	if err != nil {
      		return
      	}
      	defer f.Close()
      
      	ct := mime.TypeByExtension(filepath.Ext(filename))
      	basename := filepath.Base(filename)
      	return e.Attach(f, basename, ct)
      }
      

      連接池

      由于頻繁發送郵件會不斷的與SMTP服務器建立連接,比較影響性能,所以email提供了連接池的功能

      auth := smtp.PlainAuth("", "pingyeaa@163.com", "<你的密碼>", "smtp.163.com")
      p, _ := email.NewPool("smtp.163.com:25", 4, auth)
      

      創建成功后,就可以借助連接池來發送郵件

      e := email.NewEmail()
      e.From = "平也 <pingyeaa@163.com>"
      e.To = []string{"xxxxxx@qq.com"}
      e.Subject = "發現驚天大秘密!"
      e.Text = []byte("平也好帥好有智慧哦~")
      
      p.Send(e, 10*time.Second)
      

      Go語言庫代碼示例,歡迎star
      https://github.com/pingyeaa/golang-examples

      感謝大家的觀看,如果覺得文章對你有所幫助,歡迎關注公眾號「平也」,聚焦Go語言與技術原理。
      關注我

      posted @ 2020-04-06 11:28  MARIOOW  閱讀(923)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 男人的天堂va在线无码| 精品国产中文字幕懂色| 东京热无码国产精品| 亚洲中文字幕无码不卡电影| 亚洲精品国产av成人网| 国产微拍一区二区三区四区| 中文字幕日韩精品有码| 丁香婷婷激情综合俺也去| 亚洲中文字幕一二三四区| 亚洲国产午夜精品福利| 国产360激情盗摄全集| 成人亚洲精品一区二区三区| 成人免费在线播放av| 亚洲精品国产字幕久久麻豆| 亚洲五月天综合| 韩国三级网一区二区三区| 亚洲色一色噜一噜噜噜| 无码A级毛片免费视频下载| 无码人妻少妇色欲av一区二区| 日韩人妻少妇一区二区三区| 亚洲最大的成人网站| 奉化市| 国产不卡免费一区二区| 国产91丝袜在线观看| 专干老肥熟女视频网站| caoporn免费视频公开| 国产福利深夜在线播放 | 国产精品亚洲电影久久成人影院| 国产午夜精品视频在线播放| 4480yy亚洲午夜私人影院剧情| 开心五月激情五月俺亚洲| 韩国免费a级毛片久久| 国产一区二区波多野结衣| 国产一区二区午夜福利久久| CAOPORN免费视频国产| 亚洲国产日韩欧美一区二区三区| P尤物久久99国产综合精品| 亚洲中文久久久精品无码| 无码中文av波多野结衣一区| 夜夜添无码一区二区三区| 精品乱人伦一区二区三区|