如何标记imap消息/通过去imap库删除

时间:2015-07-14 21:37:47

标签: go imap

我希望开发Go代码以从IMAP服务器读取电子邮件,然后删除该消息(即标记它/已删除并删除)。这是如何做到这一点,因为它似乎是一个无操作。变量 message_id 是一个uint32消息号。

delset, _ := imap.NewSeqSet(string(message_id))
cmd2, err = client.Store(delset, "+FLAGS", "/Deleted")
if err != nil {
    fmt.Printf("Error on store command, err: %s\n", err)
    return
}
// below just stalls in a wait forever...
// Process responses while the command is running
// for cmd2.InProgress() {
//  // Wait for the next response (no timeout)
//  // client.Recv(-1)
//  // Process command data
//  for _, rsp2 = range cmd2.Data {
//      fmt.Println("Response from store")
//      fmt.Println(rsp2)
//  }
// }

// And later:
// Expunge
cmd3, err = client.Expunge(nil)

1 个答案:

答案 0 :(得分:0)

我得到了演示代码中的答案,该代码是该软件包的一部分。

https://github.com/mxk/go-imap/blob/master/imap-demo/demo1.go#L94

请注意,此套餐位置优先于code.google.com位置。并且,是的,标志是\已删除。