我正在尝试通过apache commons net ImapsClient连接到www.gmx.net

我能够登录并从我知道的文件夹中获取消息。
但是我的问题是在列出文件夹上。

JavaDoc告诉我


boolean list(String refName,String MailboxName)发送LIST命令到服务器。


RFC说发送““ *”列出所有文件夹。
所以如果我打电话

imap.list("", "*");


服务器返回我


AAAB清单*

AAAB BAD预期为1 * ASTRING-CHAR /字符串,而不是“”

[AAABAD预期为1 * ASTRING-CHAR /字符串,而不是“”]


所以如果我打电话

imap.list("/", "*");


服务器返回我


AAAB清单*

AAAB OK LIST完成

[AAAB OK LIST已完成]


但没有列出文件夹。因为我可以选择文件夹InboxSpamverdacht,所以显然文件夹比没有文件夹更多。

此“空结果”之一的完整日志为:


使用安全协议:SSL

在993上连接到服务器imap.gmx.net


OK [能力IMAP4rev1儿童启用IDLE空闲列表扩展列表状态
文字+移动名称空间SASL-IR排序特殊用途线=预定主题UIDPLUS
UNSELECT WITHIN AUTH = LOGIN AUTH = PLAIN] IMAP服务器就绪H migmx029 104568 IMAP-0LaTV9-1ZTDW43mbH-00lcpb


AAAA登录*******

AAAA OK登录成功

AAAB清单/ *

AAAB OK LIST完成

[AAAB OK LIST已完成]

AAAC登出


BYE服务器注销


AAAC OK登出完成


我怎么了?

最佳答案

听起来好像没有正确转义。

尝试将imap.list(“ \” \“”,“ \” * \“”)放在转义引号中。

08-17 01:46