2015-08-13 1 views
0

Grâce à l'application Java, je suis capable de se connecter avec le serveur GMAIL POP3. Quand j'appelle getMessageCount(), il me renvoie 280, bien que j'ai plus de 10k mails dans ma boîte de réception. Alors, quand je l'appelle folder.getMessages (300, 400), il me donne erreur car plage est plus que 280. Pour plus de détails, voir mon autre poste linkJavamail tirer des messages en morceaux (comme la pagination) GMAIL POP3

Ma question est:

  • est leur toute API obtenir des courriels en morceaux (comme une pagination)? Si oui, quelqu'un peut-il me donner une référence pour commencer?

Répondre

0

Ceci n'est pas une limitation javamail, il s'agit d'une limitation Gmail de leur serveur POP3. Lorsque vous accédez à POP, il ne vous affichera que 300 messages à la fois jusqu'à ce que vous les supprimiez. Il existe une autre méthode d'accès dans laquelle vous spécifiez le login comme recent:[email protected], où à la place, il affiche les 30 derniers jours d'e-mail. Ils le font parce que POP3 devient rapidement un protocole très inefficace pour accéder à des milliers de courriels, de sorte qu'ils limitent la fenêtre des messages que vous pouvez voir.

Si vous souhaitez accéder à tous les e-mails, vous devez soit basculer vers IMAP, soit utiliser l'API Gmail REST, qui ont tous deux considérablement amélioré l'accès et les expériences de messagerie.

+0

** @ Max ** pouvez-vous s'il vous plaît mettre au point sur 1. "il vous montrera seulement 300 messages à la fois jusqu'à ce que vous les supprimiez" supprimer d'où? signifie de local ou de serveur gmail? 2. "ou utilisez l'API Gmail REST" pouvez-vous fournir un lien de référence, par exemple [API GMAIL] (https://developers.google.com/gmail/api/)? – user2618875

+0

Lorsque le client POP3 fait une LISTE ou une UIDL, le serveur ne renvoie que les 300 (?) Plus anciens messages jusqu'à ce qu'ils soient supprimés du serveur. En mode récent, au lieu de cela, il vous montrera simplement le mois le plus récent du courrier électronique, et jamais plus. Et oui, c'est l'API Gmail que je veux dire. – Max

+0

Si vous avez défini "laisser sur le serveur" et "afficher tous les messages", pouvez-vous voir tous les messages? –