2010-07-13 103 views
1

我正在爲POP3寫作POP3客戶端。問題是,當電子郵件被下載時,它會從pop3服務器中刪除。我曾嘗試發送RSET命令到服務器,但它不起作用。下載後刪除POP3和Gmail郵件

我必須在斷開連接之前或下載每封郵件之後發送RSET嗎?

回答

1

如果您發送/使用DELE命令,它只應該刪除這些消息。既然你自己寫吧..根本就沒有使用DELE命令:http://www.faqs.org/rfcs/rfc1939.html

RSET命令也應該工作,也來自於哪個RFC看到:

RSET

 Arguments: none 

    Restrictions: 
     may only be given in the TRANSACTION state 

    Discussion: 
     If any messages have been marked as deleted by the POP3 
     server, they are unmarked. The POP3 server then replies 

     with a positive response. 

    Possible Responses: 
     +OK 

    Examples: 
     C: RSET 
     S: +OK maildrop has 2 messages (320 octets) 

+0

DEL是較新的發送到服務器,我發送退出命令之前的RSET,但下一次我檢查POP3列表沒有郵件。 – Woland 2010-07-13 08:00:43

+0

我試過其他的pop3服務器,它似乎是谷歌的問題。 – Woland 2010-07-13 08:04:50

0

谷歌不處理傳統意義上的POP3。一旦你下載了一封郵件,那麼它被標記爲已下載,並且POP3將表現爲已被刪除。但實際上他們在服務器上保留了一份郵件副本。

1

Gmail的POP3配置可能有時令人困惑。 在「轉發和POP/IMAP」選項卡上的「設置」中的Gmail Web界面中,可以找到一個名爲的下拉列表「使用POP訪問消息」

這裏的值列表和Gmail的行爲

一個。 「刪除Gmail的副本」: 通過發出RETR命令刪除消息。

b。 「將Gmail副本保留在收件箱中」: 消息留在收件箱中, Web界面說,這是未讀,不過消息使用POP3客戶端第二次收到 。

c。 「存檔Gmail的副本」: 通過發出RETR命令刪除消息,但可以使用網絡界面找到它,但是它的號碼爲 。

Gmail只是忽略了DELE命令,並沒有遵循POP3標準。

0

已經有一段時間了,但是在類似的問題上,我發現TOP命令並沒有將消息標記爲在Gmail POP3服務器中讀取。

所以,如果你沒有完全閱讀這條信息,你以後肯定會閱讀它。

希望它有幫助。

0

由於Gmail POP3服務器不能像普通POP3服務器那樣工作,即使電子郵件未被POP3 DELE命令刪除,也會自動隱藏舊電子郵件。

如果您想閱讀Gmail郵箱中的所有電子郵件,則可嘗試實施或查找IMAP4客戶端。我可以使用IMAP4讀取Gmail郵箱中的所有電子郵件。