通过Java应用程序,我可以连接GMAIL POP3服务器。当我调用getMessageCount()时,它返回280,尽管我的收件箱中有超过10k的邮件。因此,当我调用folder.getMessages(300,400)时,它会给出错误,因为范围超过280.有关详细信息,请参阅我的另一篇文章link
我的问题是:
答案 0 :(得分:0)
这不是javamail限制,这是他们的POP3服务器的gmail限制。通过POP访问时,它只会一次显示300条消息,直到您将其删除。还有一种备用访问方法,您可以将登录名指定为recent:user@gmail.com
,而是会显示最近30天的电子邮件。
他们这样做是因为POP3迅速成为访问数千封电子邮件的非常低效的协议,因此它们限制了您可以看到的消息窗口。
如果您希望访问所有电子邮件,则需要切换到IMAP
,或使用Gmail REST API,这两者都大大改善了邮件访问和体验。