昨天,我试图使用Mail :: IMAPClient库对来自imap的电子邮件进行排序:
my $imap = Mail::IMAPClient->new(
#my imap settings
);
#folder selection
my @messages = $imap->sort('(REVERSE ARRIVAL) UTF-8 ALL');
但是我得到了
4 IMAP命令UID SORT中的错误错误:无效的排序列表参数 (0.000 + 0.000秒)。在/var/www/localhost/htdocs/user/mail.pl行 93 .: /var/www/localhost/htdocs/user/mail.pl
我花了几个小时试图解决此问题,直到找到答案。 (如下)
答案 0 :(得分:0)
首先,我要指出的是,我受到this问题的启发,提出了错误的想法,那就是将所有内容都视为一个单独的论点。
正确的答案是:
my @messages = $imap->sort('(REVERSE ARRIVAL)', 'UTF-8', 'ALL');
我应该将排序模式与字符集分开,将字符集与搜索模式分开,因为它们是不同的参数。 现在我的代码正在运行。