するあらゆる側面を含んでいますのUIDのメッセージIMAP
-
23-09-2019 - |
質問
仕事をしているメールクライアントを用いたプロジェクトのC#.私は、POP、IMAPプロトコル通信、サーバーにコピーします。問題は以上できなかったのUIDのためのメッセージの結果から、POPサーバーのIMAPサーバが異なります。
POP
C: UIDL 1
S: +OK 1 UID2-1269789826
や
IMAP
C: $ FETCH 1 (UID)
S: * 1 FETCH (UID 2)
S: $ OK Fetch completed.
その結果を得るためには、UIDではない、ということでしょうか?にIMAPに関す。手でも大歓迎とのことです。感謝。
解決
POP3とIMAPの二つの異なるプロトコルのUIDs使用によるこれら二つのプロトコルに関係ないということになっているのです。実際、POP3UIDは任意の文字列がIMAP UIDは32ビット番号として伝送されるstring).
論理的に記述することが可能で、mailserverを支える両方のIMAPおよびPOP3のUIDの両方のプロトコルにありません認識した場合はサーバが実際にいます。 実際、治療POP3UIDs、IMAP UIDsと関係のない値です。
RFC1939年 (POP3):独自のidのメッセージで任意のサーバー定の文字列からの第一人者であり、これまで70文字の範囲の0x21に0x7Eので、一意に識別するメッセージ内のmaildropる傾向です。
RFC3501 (IMAP):(独自の識別子(UID)のメッセージ属性です)32ビットの値を割り当てられ、それぞれのメッセージを使用した場合の固有の識別子の有効値(下記参照)を形成し64ビット値にする必要をご覧くださいませその他のメッセージのメールボックスやその後のメールボックスと同じ名前です。
他のヒント
非常に重要なIMAPと
これは何を学んだことはで遊ぶのGMailメール(I期待その他のシステムと同じ):
- メッセージを送る私の受信トレイ
- このUID45
- 移動メッセージへジャンク
- このUID5(UIDはりメールボックス)
- に戻って移動受信トレイ
- このUID46
- に戻って移動ジャンク
- このUID6
- を...
からのメッセージを使用GMail.com UI
調査を実施しているのは、同じ伝えUIDのみ有の最新のメールフォルダにまとめた。のコマンドを実行します"UID 34:*
)すべてのメッセージのフォルダUID34以上です。
がんの使用を開始UIDキーとしてそのメッセージをデータベースはまだ終わdupes.
と思う私の受信およびハッシュのメッセージ内容を取得しUIDできます実際にデータベース化します。