rfc 9051 定义了正在进行的多个命令(命令管道)
.
IMAP 客户端如何正确地将此类未标记的响应与多个待处理命令中的任何一个关联起来?
答案取决于您为什么要将未标记的响应与命令相关联。
这个问题最常见的变体的答案是:在收到未标记的响应时解析它们并将它们作为结构化信息存储在 RAM 中,当您收到标记的响应时,在该数据结构中查找相关信息。
例如,如果 RFC 规定您在收到命令的标记响应时应该已经收到这样那样的
FETCH
响应(例如 UID STORE
),则在 FETCH
消息到达时对其进行解析并将每条消息的信息存储在数据结构中,当您处理标记的响应时,在该数据结构中查找消息并从中返回信息。您可能会说,这不会将未标记的响应与标记的响应相关联,而是将未标记的响应中的信息相关联。是的。没错。
此方法适用于除
SEARCH
之外的所有 IMAP。