IMAP,什么适合多数据响应?

IMAP, What is proper for multi-data responses?

如果我有 IMAP FETCH,

12 UID FETCH 3 (BODY.PEEK[HEADER] BODY.PEEK[TEXT])

然后我回复

* 3 FETCH (UID 3 BODY[HEADER] {322}
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8;format=flowed
Content-Transfer-Encoding: 7bit
Date: Fri, 07 Aug 2015 16:36:44 -0400
From: myemail@email.email
To: myemail@email.email
Subject: subjecct
Message-ID: <eea78aff8bfdfgvdfgvdgcdg655d14a4a7@email.email>
X-Sender: myemail@email.email
User-Agent: Roundcube Webmail/0.9.5
 BODY[TEXT] {14}
myemailstuff
)

都是CRLF,322恰好表示第一个块的长度,从包含322的那一行之后的CRLF,到BODY[TEXT] {14}之前的CRLF(注意前面的space BODY).

从那里,我添加了 space,然后是 BODY[TEXT] {14},等等。这不起作用。我什至无法在 RFC 3501 中找到单个规范,但又是两个连续的规范。有谁知道这方面的具体规范在哪里,或者一时半会儿就知道了?

此外,如果重要的话,这个错误直接来自 iPhone,服务器是我自己的(Avuna 中的嵌入式服务器)。

文字代替带引号的字符串或原子,并且应该以相同的方式在两边使用分隔符。也就是说 {322}\r\n[322 bytes] 应该完全被视为带引号的字符串,前面有一个 space ,后面有一个 space 或括号。

我没有发现您的示例有任何明显的问题,但是,您可能需要考虑在文字的 headers 中添加一个额外的 CRLF,这可能会让一些 MIME 解析器更快乐。