91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Golang中怎么利用自定義模板發送郵件

發布時間:2021-07-06 15:38:01 來源:億速云 閱讀:420 作者:Leah 欄目:編程語言

Golang中怎么利用自定義模板發送郵件,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

步驟一:創建必要的文件

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

Golang中怎么利用自定義模板發送郵件

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

步驟二:創建模板

Golang中怎么利用自定義模板發送郵件

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

步驟三:GO!

1、添加必要的包

Golang中怎么利用自定義模板發送郵件

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

2、登錄 Gmail

Golang中怎么利用自定義模板發送郵件

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

3、解析模板并設置 email

Golang中怎么利用自定義模板發送郵件

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

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

Golang中怎么利用自定義模板發送郵件

第 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 的文檔中。

關于Golang中怎么利用自定義模板發送郵件問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

山阳县| 娄底市| 华蓥市| 赣榆县| 界首市| 汝南县| 平原县| 新平| 富民县| 湖州市| 滦南县| 池州市| 昂仁县| 宝鸡市| 枣强县| 潜山县| 南乐县| 鱼台县| 汉寿县| 连江县| 阜城县| 梁河县| 安康市| 恩施市| 平湖市| 托克逊县| 合阳县| 漯河市| 台北县| 南充市| 车险| 南木林县| 连江县| 电白县| 曲靖市| 宜春市| 县级市| 图木舒克市| 静海县| 葫芦岛市| 汽车|