首页/网络/协议速查/IMAP UID 与 UIDVALIDITY

IMAP UID 与 UIDVALIDITY

UID 是邮件在信箱内的持久编号;UIDVALIDITY 是编号空间的「版本号」,一旦变化(信箱重建/迁移),客户端必须全量重新同步。

协议速查网络更新于 2026-10-12
UID信箱内单调递增、跨会话稳定,用于永久引用一封邮件
UIDVALIDITY随 SELECT 下发;变化意味着旧 UID 全部作废
消息号会话内的 1..N 序号,频繁变动,仅限当次会话使用
实践客户端本地缓存应以 UIDVALIDITY + UID 为键

观察 UID 相关应答

观察 UID 相关应答
a3 SELECT INBOX
* OK [UIDVALIDITY 3857529045] UIDs valid
a4 UID FETCH 100:110 (UID FLAGS)
a5 UID SEARCH UID 200:*
服务器迁移/重建信箱时 UIDVALIDITY 变化:客户端会把本地缓存全部作废重下,大批量重同步不是故障而是协议要求。

易错点

  • 拿消息号(1..N)做本地数据库主键:删除/移动几次后引用全错位,应存 UID

数据来源与参考

  • RFC 3501 §2.3.1.1(UID)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌