我正在使用IMAP协议从SMTP服务器读取电子邮件。我想知道是谁将电子邮件状态从未读更改为已读?是由SMTP服务器完成还是由电子邮件客户端完成?
发布于 2013-07-11 10:34:30
SMTP在将邮件传递到IMAP服务器时停止参与。通常,IMAP服务器在消息首次到达时将消息的标志设置为unread
,并在您获取消息时删除此标志。
理论上,客户端可以独立于服务器维护自己的本地每条消息状态,但对于已读/未读状态,这没有多大意义。对于其他元信息,这可以用作其他类型的消息状态的机制;例如,Thunderbird的消息标记似乎没有保存在服务器上。
顺便说一下,在IMAP协议中有一个peek
选项,用于在不影响消息未读状态的情况下检查消息。
https://stackoverflow.com/questions/17590810
复制相似问题