1

IMAP クライアントを作成し、そのローカル メッセージ ストアをサーバーと同期させるための最も一般的な手法は何ですか?

前回チェックしてからサーバー上の IMAP フォルダーで何が変更されたのかを把握し、それらの変更をダウンロードして、ローカル データベースに永続化する正しい方法を探していると思います...これにはメッセージが含まれなくなりますフォルダー内 (削除または移動)、新しいメッセージ、変更されたメッセージ...

新しいメッセージは簡単だと思います。フォルダーの最大の UID を取得し、その UID 以降のメッセージを見つけることができます。削除された、移動された、または変更されたメッセージ (メッセージのいくつかのフラグが変更された可能性があります) の検出についてはよくわかりません。

ありがとう!

4

1 に答える 1

1

同期のために、おそらく各フォルダーのすべてのメッセージ UID とフラグが必要です。ローカルにキャッシュされた UID を返されたサーバーと比較できます。これにより、新しいメッセージを破棄して削除することができます(

おそらく、検索/比較にある種の hastable を使用する必要があります。これにより、すべてが高速化されます。

于 2011-10-14T10:03:15.250 に答える