簡體   English   中英

如何使用 IMAP 使用 GO 在 Gmail 中創建草稿

[英]How do I create a draft in Gmail using IMAP using GO

我想使用 GO 創建一條新消息(特別是草稿),該消息存儲在我的收件箱中,所有內容都可以在以后發送。 使用 SMTP 我認為它不起作用。 使用 IMAP 也許我可以。 我該如何 go 關於這個?

package main

import (
    "bytes"
    "log"
    "os"
    "time"

    "github.com/emersion/go-imap"
    "github.com/emersion/go-imap/client"
)

func main() {
    log.Println("Connecting to server...")

    // Connect to server
    c, err := client.DialTLS(os.Getenv("IMAP_SERVER"), nil)
    if err != nil {
        log.Fatal(err)
    }
    log.Println("Connected")

    // Don't forget to logout
    defer c.Logout()

    // Login
    if err := c.Login(os.Getenv("IMAP_USER"), os.Getenv("IMAP_PASSWORD")); err != nil {
        log.Fatal(err)
    }
    log.Println("Logged in")

    // Write the message to a buffer
    var b bytes.Buffer
    b.WriteString("From: <...@gmail.com>\r\n")
    b.WriteString("To: <...@gmail.com>\r\n")
    b.WriteString("Subject: Append test\r\n")
    b.WriteString("\r\n")
    // Message body
    b.WriteString("Append test using Gmail IMAP and Draft folder")

    // Append it to Drafts
    if err := c.Append("[Gmail]/Drafts", nil, time.Now(), &b); err != nil {
        log.Fatal(err)
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM