對POP3郵箱中的新郵件的判斷方法
http://lqixv.iteye.com/blog/563247
由於pop3協議不支援對已讀未讀郵件的標記,因此,要判斷一封pop郵箱中的郵件是否是新郵件必須與郵件客戶端聯合起來才能做到。其原理是,每個伺服器都會給每封郵件產生一個唯一的uid,客戶端把讀到的uid與本地儲存的uid比較,如果本地沒有這個uid,則這封郵件是新的,否則就是舊郵件。一般的郵件客戶端,如 outlook express、foxmail等,都是用這種方法實現的。大約步驟如下:
- 客戶端讀取郵箱裡所有郵件的 uid 列表(通過命令 UIDL 可以檢視);
- 把uid列表與本地儲存的uid列表相比較;
- 如果本地已存在,則比較下一個郵件uid;
- 如果本地不存在此uid,則下載此郵件,並儲存此郵件的uid在本地;
獲取uid的程式碼如下:
POP3Folder folder = (POP3Folder)store.getFolder("INBOX");
folder.open(Folder.READ_ONLY);
Message message[] = folder.getMessages();
for (int i = 0; i < message.length; i++) {
System.out.println(folder.getUID(message[i]));
}
相關文章
- win10郵件同步163郵箱的方法_win10郵件怎麼繫結163郵箱實現同步Win10
- 郵件協議之POP3的講解協議
- 如何傳送電子郵件到別人郵箱?電子郵件傳送的方法
- Outlook如果有多個郵箱,個別郵箱設定不接收郵件的設定方法
- golang傳送郵件(qq郵箱)Golang
- win10郵件怎麼用qq郵箱 win10郵件如何使用qq郵箱Win10
- PHP判斷電子郵件是否正確的簡單方法介紹PHP
- ORACLE中使用SQL的正規表示式判斷郵箱格式OracleSQL
- win10自帶郵件系統繫結企業郵箱的方法Win10
- windows10中郵箱郵件總是顯示正在提取你的電子郵件如何解決Windows
- 垃圾郵件的一種應對方法
- 利用godaddy的cpanel郵箱伺服器的smtp發郵件Go伺服器
- 有哪些反垃圾郵件效果好的企業郵箱
- win10系統中自帶郵件如何設定接收網易郵箱郵件Win10
- spring boot配置QQ郵箱傳送郵件Spring Boot
- 谷歌郵箱,配置傳送郵件密碼谷歌密碼
- POP3協議(電子郵件郵局協議)中UIDL和TOP命令在實際使用中的作用協議UI
- win10自帶郵件怎麼新增qq郵箱_win10郵箱如何匯入qq郵箱Win10
- .net 獲取郵箱郵件列表和內容
- 郵箱/郵件地址的正規表示式及分析(JavaScript,email,regex)JavaScriptAI
- Python使用POP3和SMTP協議收發郵件Python協議
- win10在哪裡刪除郵箱帳號_win10郵件中如何刪除郵箱賬戶Win10
- 電子郵箱是qq郵箱嗎 電子郵箱和qq郵箱的區別聯絡介紹
- windows10系統中outlook郵箱已傳送郵件如何撤回Windows
- JavaMail:java使用QQ郵箱傳送郵件簡單版。JavaAI
- 【js基礎】判斷是否是合法郵箱地址(正規表示式的應用)JS
- 郵件營銷容易成為垃圾郵件的原因及解決方法
- win10系統下qq郵箱郵件中的圖片不顯示如何解決Win10
- win10系統自帶郵箱發不出去郵件怎麼辦_win10郵箱發不出去郵件解決方案Win10
- Java實現網易企業163郵箱傳送郵件Java
- 郵件功能中的那些事
- 企業郵箱在傳送郵件時失敗的原因是什麼
- qq郵箱收不到epic驗證郵件怎麼辦 epic郵箱驗證沒反應怎麼辦
- 郵箱地址校驗方法探究
- Exchange限制郵箱使用者每天/每分鐘的傳送郵件數量和速率
- 外貿業務怎麼選擇海外發郵件穩定的國際郵箱
- Gmail推銷郵件過濾器疑似出現故障:大量培根郵件湧入使用者主郵箱AI過濾器
- 郵件營銷用純文字郵件還是html郵件HTML
- qq郵箱怎麼發檔案給別的郵箱 qq郵箱如何將文件傳送給別人