2012-02-24 86 views
0

我已經創建了IMAP服務器。現在我正在尋找一種方法來強制客戶端(在我的情況下是iPhone)重新加載消息,因爲它已在服務器端進行了更改。有人知道一種方法來做到這一點嗎?重新加載IMAP消息

+0

您是基於IMAP RFC創建它的嗎?如果是這樣,它不會在那裏提供細節嗎? http://james.apache.org/server/rfclist/imap4/rfc2060.txt – 2012-02-24 18:15:21

+0

@KentBoogaart:RFC 2060已過時。最新版本的IMAP4rev1在[RFC 3501](http://tools.ietf.org/html/rfc3501)中定義。 – Douglas 2012-02-24 18:50:14

回答

0

郵件正文不允許在IMAP中更改;可以爲現有消息更改的唯一數據項是標誌列表。

如果您想模仿郵件正文中的更改,則必須告訴客戶端已刪除原始郵件,並創建新郵件。您通過發送EXPUNGE響應以及消息的原始序列號來實現前者,後者通過發送EXISTS和/或RECENT響應來實現前者,之後客戶端通常會爲新消息發出FETCH命令。

0

IMAP服務器無法強制IMAP客戶端執行任何操作。

最接近你要找的是IMAP IDLE。通過IMAP IDLE,服務器可以將某些通知推送給客戶端(如果客戶端要求接收它們)。客戶可以在收到這些通知時做任何事情。