好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Golang利用自定義模板發送郵件的方法詳解

Golang利用自定義模板發送郵件的方法詳解

熱門標簽:釘釘有地圖標注功能嗎 浙江高頻外呼系統多少錢一個月 惠州電銷防封電話卡 汕頭小型外呼系統 鄭州亮點科技用的什么外呼系統 阿里云ai電話機器人 黃岡人工智能電銷機器人哪個好 建造者2地圖標注 濱州自動電銷機器人排名

前言

在幾周前,我開始工作于一個證券投資組合網站。雖然我只能使用 React 完成整個網站,但我決定使用 Go 來創建一個可以處理某些任務(例如發送 email)的 API 服務器,相信這是一個很好的做法。

我其中的一個頁面是一個 contact 頁面,目前看起來像這樣:

contact me

我想使用專門為此 contact 表單申請的 Gmail 帳戶發送一封郵件。除了我以前用過 Javascript 發送電子郵件的事實,我沒有特別選擇 Go。但為什么不嘗試 Go 呢?我覺得 Go 很棒。

步驟一:創建必要的文件

你只需要兩個文件,一個 html 文件和一個 go 文件。它們可以放置在同一目錄中。只需確保您能正確地引用到 html 文件即可。

注意:您甚至不需要 html 文件,但您必須在 go 文件中以字符串形式編寫 html。我假設你的 Go 環境已經正確設置。如果沒有,請參照這里:https://golang.org/doc/code.html

步驟二:創建模板

該模板是一段非常簡單的 HTML,而然您可以自定義。先忽略 .Name,我們稍后再回來。

步驟三:GO!

1、添加必要的包

當你閱讀時,您應該知道為什么我們需要這些。

2、登錄 Gmail

第 14 行至第 16 行: 我從之前設置的環境變量中獲取了 Gmail 帳戶的用戶名和密碼。 使用 smtp 包的 PlaneAuth 方法結合 email 服務器的用戶名、密碼和主機名來登錄。

3、解析模板并設置 email

第 20 行至第 26 行: 首先通過解析 html 來創建一個模板,然后把它存儲在一個變量 t 中(稍后再用)。然后聲明一個 bytes.Buffer 用于保存 email 的 主題、header 和正文(自定義 html)。我發現使用 bytes.Buffer 類型比在其他在線解決方案中使用的其他類型更加靈活。fmt 包中的 Sprintf 是一個返回格式化字符串的方便方法。您可以使用它來返回包含 email 主題和 header 的字符串。然后將該字符串轉換為字節數組,并使用 Write 方法寫入字節緩沖區。到目前為止,字節緩沖區包含了主題和 header。 接下來我們再補充一下。注意:像 HTTP 一樣,您必須在 header 之后添加兩行新行。

4、填充數據模板并發送 email

第 28 行至第 37 行: 然后我們需要執行該模板,第一個參數必須實現 io.Writer 接口。由于 bytes.Buffer 類型實現了 io.Writer 接口,我們可以通過傳入一個指向 body 變量的指針來使用它。為什么我們使用指向 body 而不是該值的指針與 Go 如何實現接口有關,您可以在文檔中獲取更多信息。第二個參數包含我們想要傳入的模板(html)數據。還記得 HTML 中的 .Name 么?那就是我們如何引用執行模板的數據。. 是我們的結構體,Name 指的是屬性。不要對 struct 語法感到困惑,我只是在一條語句中聲明了結構體并初始化它。在 HTML 中使用變量只是您在 Go 模板中可以做的事情之一。

最后,使用 SendMail 方法來帶上主機與端口、之前創建的 Auth 類型、from 字段字符串和包含要發送 email 的地址的字符串數組。據我所知,from 字段字符串什么都不做。也許它對其他 email 服務器有用?

如果您想了解有關 smtp 包的更多信息,這是指向文檔的鏈接。您還可以在這里閱讀關于 text/template 包的內容。我知道我們使用了 html/template 包,但在 godocs 中,template 的實現細節在 text/template 的文檔中。

譯者注

文末提到的 from 字段指定是 email 中的發件人。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • Go語言通過smtp發送郵件的方法
  • golang實現通過smtp發送電子郵件的方法

標簽:駐馬店 瀘州 晉中 泰安 阿壩 東營 滄州 昭通

巨人網絡通訊聲明:本文標題《Golang利用自定義模板發送郵件的方法詳解》,本文關鍵詞  Golang,利用,自定義,模板,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Golang利用自定義模板發送郵件的方法詳解》相關的同類信息!
  • 本頁收集關于Golang利用自定義模板發送郵件的方法詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 亚洲高清在线不卡中文字幕网| 国产黄色一级电影| 日日鲁鲁夜夜爽爽爽狠狠爱视频| 花蝴蝶电影中字观看免费| 苏晴忘穿内裤坐公交车被揉| 色婷婷一区二区三区久久午夜成人| 小姐姐3| 乌克兰极品少妇XXXX做受| 爽?好大?快?深点翁软件| 男人咬奶边做好爽动态图| 久久久全国免费视频| 潜规则孙俏| 俄罗斯老少配性xXx| 片多多成人版?无限看新版| 好爽?好紧?我要高潮了app| 黄页网站在线视频免费| 十分钟免费观看视频720| 99久久99久久精品国产| 精品国产乱码一区二区三区APP | 日本黄漫动漫在线观看视频| 被各种道具调教肉np文| 日韩不卡一区二区| 真人免费三十分钟| 少妇婬乱全黄A片免费| 快播电影网怡红院| 美女的胸18岁以下禁止观看 | 国产黄A三级三级三级看三级男男| 国产91看片婬黄大片| 与亲女洗澡时伦了视| 国产手机在线观看视频| 波多野在线| 麻豆蜜桃国产传媒69国产 | 色天天综合色天天害人害己| 18同志chinesegaychina男男 | www.51色??萝白丝小说网| 性视频小说| 五月拍摄沟厕美女嘘嘘| 肉番本子库| 午夜性姿势108种免费看| 在线免费看a| 黄色软件下载网址|