MailKit - 文件夹名称中的无效字符
MailKit - invalid character in folder name
当文件夹名称中包含 ]
或 [
时,MailKit 会抛出以下异常:
MailKit.Net.Imap.ImapProtocolException: Syntax error in untagged STATUS response. Unexpected token: ']'
at MailKit.Net.Imap.ImapEngine.UpdateStatus(CancellationToken cancellationToken)
at MailKit.Net.Imap.ImapEngine.ProcessUntaggedResponse(CancellationToken cancellationToken)
at MailKit.Net.Imap.ImapCommand.Step()
at MailKit.Net.Imap.ImapEngine.Iterate()
at MailKit.Net.Imap.ImapEngine.Wait(ImapCommand ic)
at MailKit.Net.Imap.ImapFolder.GetSubfolders(StatusItems items, Boolean subscribedOnly, CancellationToken cancellationToken)
但有问题的文件夹似乎有效。这是我从服务器返回的内容:
C: A00000006 LIST "" "INBOX.Trash.5454.%" RETURN (SUBSCRIBED CHILDREN STATUS (UIDVALIDITY))
S: * LIST (\HasNoChildren \UnMarked) "." INBOX.Trash.5454.2121]
S: * STATUS INBOX.Trash.5454.2121] (UIDVALIDITY 1500382965)
S: A00000006 OK List completed (0.001 + 0.000 secs).
有没有其他人遇到过这样的问题,这似乎是由于 MailKit 的限制?
']' 字符应该被引用,但您连接到的任何 IMAP 服务器显然都没有正确引用它。
如果您尚未使用 MailKit 1.18.1,请尝试升级以查看是否可以解决问题。 1.18.1 为类似问题添加了一个解决方法,但我不确定它是否在未标记的状态响应中处理它。如果没有,请告诉我,我会在那里添加相同的解决方法。
当文件夹名称中包含 ]
或 [
时,MailKit 会抛出以下异常:
MailKit.Net.Imap.ImapProtocolException: Syntax error in untagged STATUS response. Unexpected token: ']'
at MailKit.Net.Imap.ImapEngine.UpdateStatus(CancellationToken cancellationToken)
at MailKit.Net.Imap.ImapEngine.ProcessUntaggedResponse(CancellationToken cancellationToken)
at MailKit.Net.Imap.ImapCommand.Step()
at MailKit.Net.Imap.ImapEngine.Iterate()
at MailKit.Net.Imap.ImapEngine.Wait(ImapCommand ic)
at MailKit.Net.Imap.ImapFolder.GetSubfolders(StatusItems items, Boolean subscribedOnly, CancellationToken cancellationToken)
但有问题的文件夹似乎有效。这是我从服务器返回的内容:
C: A00000006 LIST "" "INBOX.Trash.5454.%" RETURN (SUBSCRIBED CHILDREN STATUS (UIDVALIDITY))
S: * LIST (\HasNoChildren \UnMarked) "." INBOX.Trash.5454.2121]
S: * STATUS INBOX.Trash.5454.2121] (UIDVALIDITY 1500382965)
S: A00000006 OK List completed (0.001 + 0.000 secs).
有没有其他人遇到过这样的问题,这似乎是由于 MailKit 的限制?
']' 字符应该被引用,但您连接到的任何 IMAP 服务器显然都没有正确引用它。
如果您尚未使用 MailKit 1.18.1,请尝试升级以查看是否可以解决问题。 1.18.1 为类似问题添加了一个解决方法,但我不确定它是否在未标记的状态响应中处理它。如果没有,请告诉我,我会在那里添加相同的解决方法。