Пошта протоколы арқылы поштаны қалай жіберу керек

Көріністің артында Post Office Protocol арқылы поштаны алу туралы қараңыз

Қашықтағы серверден поштаны алу үшін пайдаланылатын Пошта Протоколы (POP) - қарапайым хаттама. Ол қарапайым функционалдылықты айқындайды және оны іске асыру оңай. Әрине, түсіну оңай.

Электрондық пошта бағдарламасы POP тіркелгісіне поштаны алып жатқанда сахналардың артында не болатынын білейік. Біріншіден, серверге қосылу қажет.

Сәлеметсіз бе, ол мені

Әдетте, POP сервері кіріс қосылымдары үшін 110 портына тыңдайды. POP клиентін (электрондық пошта бағдарламаңызды) қосқаннан кейін, ол + OK pop.philo.org торабына дайын немесе ұқсас нәрсемен жауап беруге үміттенеді. + ОК бәрі «OK» екенін білдіреді. Оның теріс эквиваленті - ЭРР , яғни бір нәрсе дұрыс емес. Мүмкін сіздің электрондық пошта клиентіңіз сізге осы теріс сервер жауаптарының біреуін көрсетті.

Logging On

Сервер бізді құттықтады, біз өзіміздің логинді пайдаланып кіріп шығуымыз керек (пайдаланушы аты «взводы», сервердің айтқаны курсивпен жазылғанын қарастырайық):

+ OK pop.philo.org дайын
USER взводы

Бұл атау бар пайдаланушы бар болғандықтан, POP сервері + OK деп жауап береді және кейбіреулер бізді шынымен қамқорлай алмайды. Серверде мұндай пайдаланушы жоқ болса, ол, әрине, бізді -ERR пайдаланушысы белгісіз деп қорқытады .

Түпнұсқалық растаманы толтыру үшін парольді бізге беру қажет. Бұл «өту» командасымен жасалады:

+ OK құпия сөзіңізді жіберіңіз
noplato өту

Егер пароль дұрыс енгізілсе, сервер OK + үлкен құпия сөзбен немесе POP серверінің бағдарламашысын есте сақтайды. Маңызды бөлігі + OK . Өкінішке орай, парольдер дұрыс емес болуы мүмкін. Сервер бұл құрғақ -ERR пайдаланушы аты мен паролі сәйкес келмейтінін ескертеді (пайдаланушы атыңызды құпия сөз ретінде пайдаланатын сияқты).

Егер бәрі жақсы болса, біз серверге қосыламыз және ол кім екенімізді біледі, сондықтан біз жаңадан келген поштаны көруге дайынбыз.

Сіз және поштаңыз бар!

Сервердегі POP есептік жазбасына сәтті кіргеннен кейін, алдымен жаңа пошта бар ма, сонша қанша екенін білуіміз мүмкін.

Бұл негізгі пошта жәшігінің статистикасын алу үшін пайдаланылатын пәрмен STAT .

Мүмкін болатын сервер жауаптары + OK 18 67042 болады . Бұл жағдайда + OK белгісінен кейінгі мән маңызды. Пошта жәшігіндегі хабарлардың саны бірден бос орын арқылы бөлінген, октетахтардағы пошта жәшігінің өлшемі (октет 8 бит) болып келеді.

STAT
+ OK 18 67042

Егер пошта болмаса, сервер OK + 0 деп жауап береді. Серверде 18 жаңа хабар болғандықтан, біз оларды LIST пәрменін пайдаланып тізімдей аламыз. Жауап ретінде сервер хабарламаларды келесі форматта тізімдейді:

LIST
+ OK 18 хабар (67042 октет)
1 2552
2 3297
...
18 3270
.

Хабарламалар бір-бірден тізімделеді, олардың әрқайсысы оның октетах өлшемі бойынша бақыланады. Тізім бір жолдағы кезеңмен аяқталады.

LIST пәрмені, мысалы, LIST 2 факультативті дәлел ретінде хабардың санын ала алады. Сервердің осы сұрауға жауап беруі + OK 2 3297 болады , хабардың нөмірі, кейін хабардың өлшемі. Егер сіз LIST 23 секілді жоқ хабарды тізімдеуге тырыссаңыз , сервер ешқандай қиялды көрсетпейді және былай дейді: -ERR мұндай хабар жоқ .

Үлкен алу (және жою)

Енді біздің есебімізде қанша хабарламалар бар екенін және қаншалықты үлкен екенін білетін болсақ, оларды ақырында оқып шығуға болатын уақыт келді.

Енді бізде жаңа пошта бар ма, жоқ па, соны білеміз. Хабарлар RETR пәрменіне аргумент ретінде өздерінің хабарлар нөмірімен бір-бірден алынады .

Сервер + OK және хабарды бірнеше жолмен жауап береді. Хабар жолдың өзінде бір кезеңмен тоқтатылады. Мысалға:

РЕТР 1
+ ОК 2552 октетов
Блак!
.

Егер бізде жоқ хабарды алуға тырыссақ , біз мұндай хабарды жоққа шығарамыз .

Енді DELE пәрменін пайдаланып хабарды жоя аламыз. (Әрине, егер сол күндердің біреуі болса, оны шығарып алмай, хабарды өшіре аламыз).

Сервер хабарды бірден тазаламайтынын білу керек. Бұл жою үшін ғана белгіленеді. Сервермен байланысын үнемі аяқтасақ, нақты жою ғана болады. Мәселен, байланыс бірден өлсе, ешбір пошта ешқашан жоғалмайды.

Сервердің DELE пәрменіне жауап беруі + OK хабарлама жойылды :

DELE 1
+ OK хабарлама 1 жойылды

Егер бұл шынымен сол күндердің бірі болса және жойғыңыз келмейтінін жою туралы хабарды белгілеп қойған болсаңыз, барлық хабарларды жою белгілерін қалпына келтіру арқылы жоюға болады. RSET пәрмені пошта жәшігін біз кірмей тұрып күйге қайтарады.

Сервер + OK және мүмкін хабарлардың саны бар жауап береді:

RSET
+ OK 18 хабарлама

Барлық хабарламаларды шығарып алып, жойғаннан кейін, QUIT пәрменін пайдаланып қоштасу керек. Бұл жою үшін белгіленген хабарларды тазартады және қосылымды жабады. Сервер + OK және қоштасу туралы хабармен жауап береді:

QUIT
+ OK bye, bye

Сервер хабарды жою мүмкін болмады. Сонда ол -ERR хабарламасы 2-де жойылмаған қатеге жауап береді.