Kiel Ricevanta Poŝton Tra la Afiŝta Oficejo Protokolo Funkcias

Malantaŭ la Scenoj Rigardu Ricevanta Poŝton Tra la Poŝtoficejo-Protokolo

La Afiŝa Oficejo-Protokolo (POP) uzata por rekuperi retpoŝton de izolita servilo estas tre simpla protokolo. Ĝi difinas la bazan funcionalidad de simpla maniero kaj estas facile apliki. Kompreneble, ankaŭ estas facile kompreni.

Ni eksciu, kio okazas malantaŭ la scenoj, kiam via retpoŝta programo ricevas retpoŝton en POP-konto. Unue, ĝi bezonas konekti al la servilo.

Saluton, mi estas

Kutime, la POP-servilo aŭskultas havenon 110 por venontajn konektojn. Sur konekto de POP-kliento (via retpoŝta programo), espereble respondos per + OK pop.philo.org preta aŭ io simila. La + OK indikas, ke ĉio estas - "OK". Ĝia negativa ekvivalenta estas -ERR , kiu signifas ion malĝuste. Eble via retpoŝta kliento jam montris al vi unu el ĉi tiuj respondaj negativaj serviloj.

Ensaluti

Nun, ke la servilo salutis nin, ni devas ensaluti uzante nian salutnomon (supozu, ke la uzantnomo estas "plato", kion la servilo diras presita en kursivoj):

+ OK pop.philo.org preta
USUARO platono

Pro tio, ke uzanto kun ĉi tiu nomo ekzistas, la POP-servilo respondas per + OK kaj eble kelkaj gibberishoj, kiujn ni vere ne zorgas pri. Ĉu ne ekzistus tia uzanto ĉe la servilo, kompreneble ni farus panikon kun uzanto -ERR nekonata .

Por kompletigi la aŭtentikadon ni ankaŭ devas doni nian pasvorton. Ĉi tio fariĝas per la "pas" komando:

+ OK sendu vian pasvorton
pasi noplato

Se ni tajpas la pasvorton ĝuste, la servilo respondas per granda bonega pasvorto aŭ ĉio, kion ajn la programisto de la POP-servilo pensis. La grava parto denove estas la + OK . Bedaŭrinde, pasvortoj ankaŭ povas esti malĝuste. La servilo notas tion per seka -ERR-uzantnomo kaj pasvorto ne kongruas (kvazaŭ vi uzus vian uzantnomon kiel vian pasvorton).

Se ĉio sekvas, tamen, ni estas konektitaj al la servilo kaj ĝi scias, kiu ni estas, do ni pretas serĉi la ĵus alvenitan poŝton.

Vi havas Poŝton!

Post kiam ni sukcese ensalutis al nia POP-konto ĉe la servilo, ni unue volas scii ĉu estas nova poŝto tute kaj eble eble kiom.

La komando uzita por rekuperi ĉi tiujn bazajn datumbazojn estas STAT .

Ebla servila respondo estus + OK 18 67042 . En ĉi tiu kazo, ĝi gravas, kio sekvas la signo + OK . Tuj sekvanta estas la nombro da mesaĝoj en la leterkesto, tiam, apartigita per spaco, la grandeco de la leterkesto en octetoj (octeto estas 8 bitoj).

STAT
+ OK 18 67042

Se ne ekzistas poŝto, la servilo respondas per + OK 0 0 . Pro tio ke estas 18 novaj mesaĝoj en la servilo, tamen ni povas listigi ĉi tiujn uzante la LIST- komandon. En respondo, la servilo listigas la mesaĝojn en la sekva formato:

LISTO
+ OK 18 mesaĝoj (67042 octetoj)
1 2552
2 3297
...
18 3270
.

La mesaĝoj estas listigitaj unu samtempe, ĉiu sekvas ĝia grandeco en octetoj. La listo finiĝas per periodo per linio.

La LIST-komando povas preni la nombro de mesaĝo kiel laŭvola argumento, LIST 2 ekzemple. La respondo de la servilo al ĉi tiu peto estus + OK 2 3297 , la nombro de la mesaĝo sekvita de la grandeco de la mesaĝo. Se vi provas listigi mesaĝon, kiu ne ekzistas, kiel LISTO 23 , la servilo montras neniun imagon kaj diras: -ERR ne tiaj mesaĝoj .

La Big Retrieve (Kaj Forigi)

Nun, ke ni scias kiom da mesaĝoj estas en nia konto kaj kiom grandaj ili estas, fine estas tempo por rekuperi ilin, do ni ankaŭ povas legi ilin.

Nun, ekscii ĉu ni havas novan poŝton, venas la realaĵo. La mesaĝoj estas ricevitaj unu post unu kun sia mesaĝa nombro kiel argumento al la RETR- komando.

La servilo respondas per + OK kaj la mesaĝo kiel ĝi estas, en multaj linioj. La mesaĝo finiĝas per periodo per linio. Ekzemple:

RETRO 1
+ OK 2552 octetojn
Blah!
.

Se ni provos ricevi mesaĝon, kiu ne ekzistas, ni ricevas -ERR ne tian mesaĝon .

Nun ni povas forigi la mesaĝon per la komando DELE . (Ni povas, sendube, forviŝi la mesaĝon sen rekuperi ĝin se ĝi estas unu el tiuj tagoj).

Estas bone scii, ke la servilo ne tuj purigos la mesaĝon. Ĝi estas nur markita por forigo. Aktuala forigo nur okazas, se ni regule finos la rilaton al la servilo. Do neniu retpoŝto neniam perdiĝos se la rilato mortos subite, ekzemple.

La respondo de la servilo al la komando DELE estas forgesita OK-mesaĝon :

DELE 1
+ OKa mesaĝo 1 forigita

Se ĝi efektive estas unu el tiuj tagoj kaj ni markis mesaĝon por forigo, ke ni ne volas forigi, ĝi eblas forigi ĉiujn mesaĝojn ripetante la forigon. La komando de RSET redonas la leterkeston al la ŝtato, antaŭ ol ni ensalutis.

La servilo respondas per + OK kaj eble la nombro da mesaĝoj:

RSET
+ OK 18 mesaĝoj

Post kiam ni revenis kaj forigis ĉiujn mesaĝojn, temas pri adiaŭo uzante la QUIT- komandon. Ĉi tio purigos la mesaĝojn markitajn por forigo kaj fermos la ligon. La servilo respondas per + OK kaj adiaŭa mesaĝo:

QUIT
+ OK posten, ne plu

Eblas, ke la servilo ne povis forviŝi mesaĝon. Tiam ĝi respondos per eraro kiel -ERR-mesaĝo 2 ne forigita .