未标记的 FETCH 响应中的 MailKit Fetch 语法错误。意外的标记:'\\n'
MailKit Fetch Syntax error in untagged FETCH response. Unexpected token: '\\n'
我看到了几个与此相关的问题,但其中 none 似乎与我遇到的问题相符,因此提出了这个问题。
我有一个邮箱(这是我遇到此问题的第一个也是唯一一个),运行 针对 Domino 服务器。当它试图获取此帐户的收件箱时,它显示
foreach (var summary in client.Inbox.Fetch(0, -1, Items).Where(x =>
(x.Flags & MessageFlags.Deleted) != MessageFlags.Deleted &&
(x.Flags & MessageFlags.Seen) != MessageFlags.Seen))
{
//Do something...
}
我的 imap 协议日志中的最后一个条目是:
S: FLAGS (\Seen))
S: * 8303 FETCH (UID 8303 ENVELOPE ({..MASKED..}) BODY[HEADER.FIELDS (REFERENCES)] {4}
S:
S:
S: FLAGS (\Seen))
此日志中没有 FETCH COMPLETE,而且有时日志似乎比其他日志更大(获取的电子邮件更多)。异常总是相同的,意想不到的标记\n.
关于原子令牌异常的更新:
{"Syntax error in ENVELOPE. Unexpected token: [atom: <user@domain.orguser]"}
S: FLAGS (\Seen))
S: * 19607 FETCH (UID 19607 ENVELOPE ("Wed, 8 Nov 2014 13:50:09 +0100" "Re: LDAP Filter" (("DisplayName1" NIL "dn1" "domain2.invalid")) (("DisplayName1" NIL "dn1" "domain2.invalid")) (("DisplayName1" NIL "dn1" "domain2.invalid")) (("DisplayName4" NIL "dn4" "domain1.invalid")("DisplayName3" NIL "dn3" "domain3.invalid")) (("DisplayName2" NIL "dn2" "domain2.invalid")("user@domain.org" NIL "user" "domain.org> "ss@domain.org" <user@domain.orguser")) NIL "<OF4C7FF16B.1B0A6826-ONC1257D6B.003FBF81-C1257D6B.00400501@LocalDomain>" "<OF31482F53.2CA9A4AC-ONC1257D6B.004080EE-C1257D6B.00410453@LocalDomain>") BODY[HEADER.FIELDS (REFERENCES SUBJECT)] {235}
S: Subject: Re: LDAP Filter
S: References: <3A5893A9FA8E964D862DAA1FA2B5E9EA1BCD89@OESTMB701.domain1.invalid>
S: <3A5893A9FA8E964D862DAA1FA2B5E9EA1C1A45@OESTMB701.domain1.invalid>
S: <OF4C7FF16B.1B0A6826-ONC1257D6B.003FBF81-C1257D6B.00400501@LocalDomain>
它说它遇到了一个意外的换行符。问题是 可能 header 解析器没有消耗空 header blob 的所有 4 个字节(它可能只消耗第一个空行)。
A work-around 可能是请求确实存在的 header 以及 REFERENCES header(可能是主题)。
var headers = new HashSet<string> ();
headers.Add ("REFERENCES");
headers.Add ("SUBJECT");
var items = folder.Fetch (0, -1, summaryItemFlags, headers);
我看到了几个与此相关的问题,但其中 none 似乎与我遇到的问题相符,因此提出了这个问题。
我有一个邮箱(这是我遇到此问题的第一个也是唯一一个),运行 针对 Domino 服务器。当它试图获取此帐户的收件箱时,它显示
foreach (var summary in client.Inbox.Fetch(0, -1, Items).Where(x =>
(x.Flags & MessageFlags.Deleted) != MessageFlags.Deleted &&
(x.Flags & MessageFlags.Seen) != MessageFlags.Seen))
{
//Do something...
}
我的 imap 协议日志中的最后一个条目是:
S: FLAGS (\Seen))
S: * 8303 FETCH (UID 8303 ENVELOPE ({..MASKED..}) BODY[HEADER.FIELDS (REFERENCES)] {4}
S:
S:
S: FLAGS (\Seen))
此日志中没有 FETCH COMPLETE,而且有时日志似乎比其他日志更大(获取的电子邮件更多)。异常总是相同的,意想不到的标记\n.
关于原子令牌异常的更新:
{"Syntax error in ENVELOPE. Unexpected token: [atom: <user@domain.orguser]"}
S: FLAGS (\Seen))
S: * 19607 FETCH (UID 19607 ENVELOPE ("Wed, 8 Nov 2014 13:50:09 +0100" "Re: LDAP Filter" (("DisplayName1" NIL "dn1" "domain2.invalid")) (("DisplayName1" NIL "dn1" "domain2.invalid")) (("DisplayName1" NIL "dn1" "domain2.invalid")) (("DisplayName4" NIL "dn4" "domain1.invalid")("DisplayName3" NIL "dn3" "domain3.invalid")) (("DisplayName2" NIL "dn2" "domain2.invalid")("user@domain.org" NIL "user" "domain.org> "ss@domain.org" <user@domain.orguser")) NIL "<OF4C7FF16B.1B0A6826-ONC1257D6B.003FBF81-C1257D6B.00400501@LocalDomain>" "<OF31482F53.2CA9A4AC-ONC1257D6B.004080EE-C1257D6B.00410453@LocalDomain>") BODY[HEADER.FIELDS (REFERENCES SUBJECT)] {235}
S: Subject: Re: LDAP Filter
S: References: <3A5893A9FA8E964D862DAA1FA2B5E9EA1BCD89@OESTMB701.domain1.invalid>
S: <3A5893A9FA8E964D862DAA1FA2B5E9EA1C1A45@OESTMB701.domain1.invalid>
S: <OF4C7FF16B.1B0A6826-ONC1257D6B.003FBF81-C1257D6B.00400501@LocalDomain>
它说它遇到了一个意外的换行符。问题是 可能 header 解析器没有消耗空 header blob 的所有 4 个字节(它可能只消耗第一个空行)。
A work-around 可能是请求确实存在的 header 以及 REFERENCES header(可能是主题)。
var headers = new HashSet<string> ();
headers.Add ("REFERENCES");
headers.Add ("SUBJECT");
var items = folder.Fetch (0, -1, summaryItemFlags, headers);