Domanda

sto scrivendo un crawler IMAP, che fa parte di un app Open Source, e per incrementale strisciando mi piacerebbe utilizzare i UID dei messaggi per scoprire se ho già visto un particolare messaggio o meno.

Ora ho trovato un post da 2007, che dice UID IMAP non sono sempre affidabili. Più in particolare, se il flag UIDNOTSTICKY è impostato, non è possibile assumere le UID sono sempre gli stessi. Quindi la mia domanda è, devo prendere il caso UIDNOTSTICKY = true sul serio, o sono i server IMAP con UID non appiccicosi roba legacy e non in (molto diffuso) uso più?

È stato utile?

Soluzione

Se il codice di risposta UIDNOTSTICKY viene restituito nel corso di una SELECT o ESAMINARE, potrai anche vedere che il valore UIDVALIDITY sulla cassetta postale (il termine IMAP per una cartella) cambia ogni volta che si seleziona o esaminare la cassetta postale. Ma bisogna verificare la presenza di un cambiamento di UIDVALIDITY comunque dato UIDVALIDITY della cassetta postale non è garantito immutabile, e tale modifica invalida tuoi UID nella cache. Sì, i valori UIDVALIDITY in generale non cambiano. Ma il codice di intenzione di avere a che fare con questo caso, e così facendo avrete anche ricoperto il caso UIDNOTSTICKY.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top