Пошта pop3. Як і слід було очікувати, команда QUIT закриває з'єднання з сервером. Як отримати пошту по POP3 з PHP

POP3 це протокол за яким ми можемо отримати пошту з сервера, для такого завдання, використовується ще протокол IMAP, але про нього я можливо напишу в майбутньому, коли зіткнемося з ним. А для відправки пошти використовується як правило SMTP протокол, але мова тут піде про отримання пошти. Спочатку трохи теорії.

Як працює POP3 протокол.

Отже, згідно з поштовим протоколу POP3, сервер вішається на порт 110 і слухає вхідні з'єднання. Сервер це сноб - він ніколи не почне діалог першим. Тому першими з ним повинні «заговорити» (підключитися) ми, використовуючи TCP з'єднання. І коли з'єднання встановлено POP3 сервер посилає нам запрошення. Потім, поки з'єднання залишається відкритим відбувається обмін даннимі.В кінці статті приклад простенького скрипта, а поки короткий опис. Отже, дійові особи: S: - сервер, С: - клієнт.

Вся ваша пошта з одним підключенням, одним клацанням миші!


Чому мої папки дублюються в старому інтерфейсі веб-пошти? Після використання нового інтерфейсу електронної поштив перший раз, патчі чернеток, дампи дублюються в старому інтерфейсі, і у нас є папка «Відправлено» і ще один відправлений.




Інші папки Чернетки, Відправлені, Кошики відповідають папок Чернетки, Відправлені і Кошики нового інтерфейсу і є вихідними папками цього старого інтерфейсу. Отримана папка відповідає, звичайно, папці поштової скриньки нового інтерфейсу.

Команди протоколу POP3

Команди протоколу POP3 складаються з ключових слів, за якими можуть слідувати аргументи наприклад: DELE 1 - тут ми (тобто клієнт) повідомили сервера, що ми помічаємо 1 повідомлення на видалення. (Чому DELE, а не DELETE? - читай нижче.)

всі команди сервера повинні закінчуватися парою CRLF(Це, якщо писати скрипти, символи: \ n - У Unix подібних системах і \ r \ n в кватирках).

У чому різниця між адресою, ім'ям входу і ім'ям облікового запису? Ім'я облікового запису використовується для настройки вашого профілю. Напишіть персоналу, який буде генерувати Новий парольпісля перевірки параметрів ідентифікації. Лист з підтвердженням буде надіслано на адресу електронної пошти, і новий пароль буде відправлений вам після отримання вашої відповіді. Ця процедура призначена для запобігання шахрайському використанню налаштувань вашого профілю електронної пошти.

Мій пароль або логін не працюють! Увага, паролі чутливі до регістру. Підтвердження буде відправлено на адресу електронної пошти, і зміни будуть активовані після отримання вашої відповіді. Ви більше не можете налаштовувати автовідповідач в свого облікового запису. У той же час надішліть листа електронною поштою на адресу електронної пошти, і зміни будуть активовані після отримання вашої відповіді.

Команди їхні аргументи повинні складатися з символів друкованого діапазону ASCII.

Команда і її аргументи повинні розділятися одним (!) Прогалиною.

Ключове слово команди повинно бути від 3 до 4 символів довжиною, а її аргумент не може перевищувати 40 символів.

Згідно з протоколом POP3, відповіді сервера складаються з прапора стану - це:

+ OK- Все добре. -ERR- Все погано.

І ключового слова, За яким може йти додаткова інформація, Наприклад:

Але якщо вам потрібно відправити велика кількістьлистів, може виникнути безліч проблем з доставкою повідомлень. Вільні провайдери також накладають суворі обмеження на кількість електронних листів, які можуть бути відправлені за один раз. Деякі функції порталу не будуть працювати. . Обидві ці хмарні служби також надають поштові послуги. Ми називаємо поштові службив цих хмарах.

І якщо ви не хочете активно користуватися послугами, вам це не потрібно, і для вас нічого не змінюється. Вам не потрібно турбуватися про зміну налаштувань. Відправлення електронної пошти, а також інших додатків може використовуватися у всіх хмарних сервісахнезалежно від обраних вами параметрів.

Як видно вище, відповідь сервера так само закінчується парою CRLF

Пара CRLF асоціюється у мене зі словом «Вступ» - це, як по рації: коли ти все, що хотів, сказав і в кінці говориш слово «Вступ», що б співрозмовник зрозумів, що тепер ти його слухаєш.

Іноді відповідь сервера містить кілька рядків:

З: LISTCRLF S: + OK 2 messages (320 octets) CRLF S 1 120 CRLF S: 2 200CRLF S: .CRLF

Аналогічно, ви можете встановити один з цих псевдонімів в якості адреси відправника і діяти в повідомленнях електронної пошти під цим посвідченням. Якщо людина не влаштовує існуючий вотлогін, він може попросити про зміну. Це класичний поштовий клієнт, в якому ви можете управляти своїми листами.







Електронна пошта також може бути отримана в середовищах клієнта електронної пошти, встановлених на вашому ПК. Процедура настройки описана нижче. Назвіть свій пароль електронної пошти. . Після успішної настройки натисніть «Готово». Ви можете додати до 5 облікових записів електронної пошти.

У такому випадку, якщо кожен рядок, відповідно до протоколу POP3 - закінчується парою CRLF то, як нам зрозуміти, де кінець відповіді? В даному випадку кінцем всього відповіді потрібно вважати рядок: .CRLFде точка - це символ ASCII з кодом 46 і знайома нам пара CRLF.

APOP [ім'я]

Ця команда передає POP3 сервера логін і зашифрований пароль (digest). Використовується, коли ми хочемо авторизуватися на сервері, і при цьому не передавати пароль у відкритому вигляді.

Натисніть на значок шестерні в правому верхньому куті вікна, натисніть «Параметри» в правому меню, щоб відкрити розділ «Пошта», натисніть розділ «Акаунти» і виберіть «Підключення облікові записи». Щоб додати нову обліковий запис, Клацніть значок. Введіть свою адресу електронної пошти і пароль та натисніть "ОК".

Заплануйте зустрічі і важливі заходи. Завдяки онлайн-доступу ви будете в курсі всіх ваших офісних пристроїв. Ви можете створювати як особисті календарі, так і календарі, спільно використовувані з вашими колегами у вашій організації. Якщо ви не досвідчений користувач, ознайомтеся з довідкою з управління та управління календарем.

[Ім'я] - рядок, що вказує ім'я поштової скриньки.

- тимчасова мітка, сконкатенірованная з паролем, і зашифрована по MD5-алгоритму.

Якщо ця команда підтримується, мітка часу виходить при з'єднанні з сервером.

USER [ім'я]

Відправляє ім'я користувача.

[Ім'я] - рядок, що вказує ім'я користувача (поштової скриньки).

Коли ви запустите додаток, з'явиться головне вікно, в якому ви можете управляти своїми подіями і календарями. Якщо ви не можете відправити електронний лист при використанні порту 25, спробуйте один з альтернативних портів. Адреса входить поштового сервера для обох протоколів однаковий.

Вони можуть тільки дізнатися на сервері кількість повідомлень, їх розмір і завантажити ці повідомлення і видалити їх з сервера. Щоб забезпечити безперебійну роботу поштових послуг, пропонованих нам усіма клієнтами, необхідно захистити надані послуги від їх неправильного використання. Таким чином, електронного листа може бути відправлено до 100 одержувачів за один раз. Крім того, ви повинні вказати існуючу адресу електронної пошти відправника та дійсний дозвіл. В іншому випадку електронного листа буде заблоковано.

PASS [пароль]

Відправляє пароль користувача.

[Пароль] - пароль до поштової скриньки.

DELE [повідомлення]

Позначає вказане повідомлення на видалення. Помічені повідомлення, насправді, видаляються тільки після закриття транзакції, після того, як пройшла команда QUIT. Так само закриття транзакцій на серверах може відбуватися після закінчення, встановленого сервером. Що б цього не сталося можна посилати сервера

Що таке логін для веб-пошти?

Як тільки ця адреса буде введений, відбудеться автоматичне перенаправлення для входу в веб-пошту. Щоб увійти в систему, ви вводите повне ім'я своєї адреси електронної пошти та пароля.

Як змінити поштову скриньку на перенаправлення і навпаки

Якщо поле одного або іншого типу вже засновано, ви повинні спочатку скасувати його і заново створити в необхідній формі.

Приклад діалогу з поштовим сервером POP3

У списку поштових скриньок клацніть значок кошика для обраної записи і підтвердіть видалення. Якщо ви хочете створити поштову скриньку, введіть пароль, крім імені поштової скриньки. Якщо ви хочете налаштувати перенаправлення, спочатку клацніть під заголовком форми на слайді і заповніть ім'я і поле поштової скриньки, щоб ввести адреси електронної пошти, в які ви хочете перенаправити вхідну пошту.

  • Увійдіть в інтерфейс користувача.
  • Для свого домену натисніть кнопку «Докладно».
  • Перейдіть на вкладку «Електронна пошта».
  • Натисніть кнопку «Створити нову електронну пошту» після видалення.
Ні, розмір поштових скриньок завжди рівномірно розподіляється між усіма поштовими скриньками.

LIST [повідомлення]

Якщо передати аргумент - номер повідомлення, то сервер видає інфу про запитуваній повідомленні. Інакше, сервер видає інформацію про всі повідомлення, які є на пошті. До речі, повідомлення, помічені для видалення, що не перерахуються.

[Повідомлення] - номер повідомлення (необов'язково).

NOOP

Це щось на зразок пинга сервера, в разі доступності сервер завжди відповість + OK.

Перевищена квота кеш-пам'яті

Адреса кошика доменів можна задати в розділі «Відомості про домен» в інтерфейсі. Отже, якщо ви наближаєтеся або ваша максимальна квота перевищена, ми рекомендуємо видалити всі непотрібні електронні листи. Ви можете знайти цю інформацію після входу в інтерфейс веб-пошти або призначений для користувача інтерфейс в своїх даних про домен на вкладці «Електронна пошта».

Який максимальний розмір повідомлення електронної пошти?

Цей розмір, але не відповідає максимальному розміру вкладення. Це залежить від структури повідомлення електронної пошти. Доставка більшого повідомлення електронної пошти залежить від багатьох інших факторів.









Налаштування сервера вхідної пошти

Вкажіть правильну адресу відправника. . Пароль: пароль, який ви використовуєте для поштової скриньки.

Можна надсилати цю команду, час від часу, що б сервер не закрив з'єднання при тривалому простої.

RETR [повідомлення]

Отримати повідомлення з вказаним номером.

[Повідомлення] - номер повідомлення.

Відкат транзакцій в межах поточного сеансу. Наприклад, якщо ви випадково позначили повідомлення на видалення, то можна прибрати мітки, пославши команду RSET.

Налаштування сервера вихідної пошти

Перевага в основному відключено. Порт для вихідної пошти, за замовчуванням, достатньо, щоб він був попередньо налаштований клієнтом. При необхідності ви можете встановити таку таблицю. що виходить серверанеобхідно ввійти на сервері вихідної пошти. Вхід в систему знову розташується вздовж усього адреса електронної пошти та пароль для поштової скриньки. Крім того, ви повинні включити цей параметр в поштовому клієнті.

Задайте вихідний поштовий портпо мірі необхідності. Спосіб отримання поштового повідомлення впливає на ваш комфорт роботи. Кожен з них повинен використовуватися відповідно до потреб користувача. Наведена нижче інформація допоможе вам вирішити, який спосіб доступу до вашої пошти більш підходить для вас. Працює безпосередньо на повідомленнях на поштовому сервері, тільки витягує заголовки повідомлення, саме повідомлення і вкладення завантажуються на вимогу, користувач може видаляти і переміщати пошту в різні папки на сервері, не завантажуючи весь свій поштовий ящик з кожного комп'ютера, підключеного до мережі. Повідомлення залишаються на сервері, поки вони не будуть витягнуті, повторно отримуючи одні і ті ж повідомлення. Вся пошта до видалення зберігається на поштовому сервері.

Отримати кількість повідомлень в ящику, а так само ще і розмір, займаний цими повідомленнями на сервері.

Отримати заголовки зазначеного повідомлення, і вказану кількість перших рядків повідомлення. Ці дані повернутися, розділені символом нового рядка.

[Повідомлення] - номер повідомлення.

[Кількість рядків] - скільки рядків потрібно вивести.

Повідомлення зберігаються на вашому локальному комп'ютеріі знаходяться в автономному режиміі не вимагають підключення до Інтернету для перегляду вже отриманої пошти. Автоматично витягує всі доступні повідомлення з вкладеннями, повідомлення може бути видалено тільки після того, як він одержав підтримку лише однієї папки на поштовому сервері. Пошта не займає місця на сервері. . Отримана пошта доступна постійно, без необхідності підключення до Інтернету.

Повідомлення, відправлені з поштового клієнта, будуть збережені як на вашому комп'ютері, так і на сервері, і ви можете отримати до них доступ з різних пристроїв. При необхідності ви можете налаштувати фільтри в поштовому клієнті для автоматичного переміщення повідомлень в потрібні папки. Повідомлення, які ви відправляєте, будуть збережені тільки на вашому комп'ютері.

ім'я аргументи обмеження можливі відповіді
APOP [Ім'я] Підтримка цієї команди не гарантується * + OK maildrop has n message * -ERR password suplied for [ім'я] is incorrect
USER [Ім'я] - * + OK name is a valid mailbox * -ERR never heard of mailbox name
PASS [Пароль] Працює після успішної передачі імені поштової скриньки * + OK maildrop locked and ready * -ERR invalid password * -ERR unable to lock maildrop
DELE [повідомлення] * + OK message deleted * -ERR no such message
LIST [повідомлення] Доступна після успішної ідентифікації * + OK scan listing follows * -ERR no such message
NOOP - Доступна після успішної ідентифікації + OK
RETR [повідомлення] Доступна після успішної ідентифікації * + OK message follows * -ERR no such message
RSET - Доступна після успішної ідентифікації + OK
STAT - Доступна після успішної ідентифікації + OK a b
TOP [Повідомлення] [кількість рядків] Доступна після успішної ідентифікації * + OK n octets * -ERR no such message
QUIT - - + OK

Стану сеансу POP3

Згідно з протоколом POP3, сеанс складається з декількох режимів:

AUTHORIZATION:

- Має місце, коли ми з'єдналися з сервером, і він відправив нам запрошення:

S:<Сервер слушает порт 110>C:<подключается к серверу>S: + OK POP3 server ready

Тут ми повинні ідентифікувати себе:

C: APOP vasya S: + OK vasya "s maildrop has 2 messages (320 octets)

Пошта автоматично зберігає копії листів на сервері, але ви можете видалити електронні листи за допомогою веб-інтерфейсу. Для цього перейдіть в Налаштування → Клієнти електронної пошти та виберіть папки. За замовчуванням при завантаженні вмісту папки з використанням поштових клієнтівповідомлення не позначені як прочитані. Якщо ви хочете помітити отримані повідомлення як прочитані, включіть відповідну опцію.

Проблеми з поштовим клієнтом

Виберіть отримане повідомлення. Якщо ви отримали повідомлення про те, що з'єднання з сервером відсутній, спробуйте повторно ввести своє ім'я користувача та пароль у веб-інтерфейс. Переконайтеся, що протокол, який ви хочете використовувати, перевіряється. Переконайтеся, що налаштування вашої поштової програминалаштовані так, як зазначено нижче.

Тут варто пояснити, що команда APOP [ім'я], яку я опишу нижче, може і не підтримуватися. Тоді авторизація може відбуватися таким чином, коли пароль передається відкритим текстом:

C: USER vasya S: + OK User accepted C: PASS vasinpass S: + OK Pass accepted

Якщо все проходить успішно, наші відносини з сервером переходять в режим транзакції.

TRANSACTION:

На даному етапі ми отримуємо інформацію про стан нашого поштової скриньки. Так само ми можемо прийняти і відправити пошту, а так само помітити листи на видалення. Завершити цей режим можна командою QUIT, отримавши її сервер, переходить до режиму UPDATE.

UPDATE:

На даному етапі сервер видаляє помічені нами на видалення листи, в загальному, звільняє ресурси і закриває з'єднання.

Варто зауважити, що у поштового сервера POP3 може існувати так званий INACTIVITY AUTOLOGOUT таймер . Він повинен мати, по крайней мере, 10-хвилинний інтервал. Це означає, що якщо ми не спілкуємося з сервером протягом цього інтервалу, сервак «засмучується» на нас, і автоматично закриває з'єднання, не переходячи при цьому, в режим UPDATE.

Приклад діалогу з поштовим сервером POP3

S:<Сервер ожидает входящих соединений на порту 110>C:<подключается к серверу>S: + OK POP3 server ready<[Email protected]> C: APOP vasya S: + OK vasya "s maildrop has 2 messages (320 octets) C: STAT S: + OK 2 320 C: LIST S: + OK 2 messages (320 octets) S 1 120 S: 2 200 S:. C: RETR 1 S: + OK 120 octets S:<сервер передает сообщение 1>S:. C: DELE 1 S: + OK message 1 deleted C: RETR 2 S: + OK 200 octets S:<сервер передает сообщение 2>S:. C: DELE 2 S: + OK message 2 deleted C: QUIT S: + OK dewey POP3 server signing off (maildrop empty) C:<закрывает соединение>S:<продолждает ждать входящие соединения>

Як отримати пошту по POP3 з PHP

Звісно, ​​це найпростіший приклад, Просто що б зрозуміти, як можна реалізувати діалог з сервером. Те що виходить на виведенні, я не наводжу тут. Навряд чи Вам буде цікава моя пошта :)

Ob_implicit_flush (); header ( "content-type: text / html; charset = windows-1251"); // Визначимо пару CRLF: define ( "CRLF", "\ r \ n"); // Функція для отримання многострочного відповіді: function getData ($ fp) ($ data = ""; while (! Feof ($ fp)) ($ line = trim (fgets ($ fp, 1024)); if (trim ($ line) == ".") break; $ data. = $ line;) return $ data;) // Відкриваємо сокет $ fp = fsockopen ( "pop.yandex.ru", 110, $ errNo, $ errStr, 10) ; print fgets ($ fp, 1024). "
"; // Надсилаємо Логін: fputs ($ fp," USER vasya-pupkin ".CRLF); print fgets ($ fp, 1024)."
"; // Надсилаємо Пароль: fputs ($ fp," PASS ***** ". CRLF); print fgets ($ fp, 1024)."
"; // запитуваного листа № 26 fputs ($ fp," RETR 26 ".CRLF); print getData ($ fp); // Закриваємо сесію: fputs ($ fp," QUIT ".CRLF);

Post Office Protocol (POP) - протокол доставки пошти користувачеві з поштової скриньки поштового сервера РОР. Багато концепції, принципи і поняття протоколу POP виглядають і функціонують подібно SMTP. Команди POP практично ідентичні командам SMTP, відрізняючись в деяких деталях. На рис.7 зображена модель клієнт-сервер по протоколу POP. Сервер POP знаходиться між агентом користувача і поштовими скриньками.

В даний час існують дві версії протоколу POP - РОР2 і РОРЗ, що володіють приблизно однаковими можливостями, однак несумісними один з одним. Справа в тому, що у РОР2 і РОРЗ різні номери портів протоколу. Між ними відсутній зв'язок, аналогічна зв'язку між SMTP і ESMTP. Протокол РОРЗ не є розширенням або модифікацією РОР2 - це зовсім інший протокол. РОР2 визначено в документі RFC 937 (Post Office Protocol-Version 2, Butler, et al, 1985), a РОРЗ - в RFC тисяча двісті двадцять п'ять (Post Office Protocol-Version 3, Rose, 1991). Далі коротко розглянемо POP взагалі і більш докладно - РОРЗ. PОРЗ розроблений з урахуванням специфіки доставки пошти на персональні комп'ютери і має відповідні операції для цього.

Призначення протоколу РОРЗ

Раніше поштові повідомлення більшості мереж доставлялися безпосередньо від одного комп'ютера до іншого. І якщо користувач часто міняв робочі комп'ютери або один комп'ютер належав кільком користувачам, існували певні проблеми. В наші дні загальноприйнята доставка повідомлення не на комп'ютери користувача, а в спеціальні поштові скриньки поштового сервераорганізації, який цілодобово працює (включений).

Опис протоколу РОРЗ

Конструкція протоколу РОРЗ забезпечує можливість користувачеві звернутися до свого поштового сервера і вилучити накопичилася для нього пошту. Користувач може отримати доступ до РОР-серверу з будь-якої точки доступу до Інтернет. При цьому він повинен запустити спеціальний поштовий агент (UA), що працює по протоколу РОРЗ, і налаштувати його для роботи зі своїм поштовим сервером. Отже, на чолі моделі POP знаходиться окремий персональний комп'ютер, Що працює виключно в якості клієнта поштової системи (сервера). Підкреслимо також, що повідомлення доставляються клієнтові за протоколом POP, а надсилаються як і раніше за допомогою SMTP. Тобто на комп'ютері користувача існують два окремих агента-інтерфейсу до поштовій системі- доставки (POP) і відправки (SMTP). Розробники протоколу РОРЗ називає таку ситуацію "Роздільні агенти"(Split UA). Концепція роздільних агентів коротко обговорюється в специфікації РОРЗ.

У протоколі РОРЗ обумовлені три стадії процесу отримання пошти: авторизація, транзакція і оновлення. Після того як сервер і клієнт РОРЗ встановили з'єднання, починається стадія авторизації. На стадії авторизації клієнт ідентифікує себе для сервера. Якщо авторизація пройшла успішно, сервер відкриває поштову скриньку клієнта і починається стадія транзакції. У ній клієнт або запитує у сервера інформацію (наприклад, список поштових повідомлень), або просить його вчинити певну дію (наприклад, видати поштове повідомлення). Нарешті, на стадії оновлення сеанс зв'язку закінчується. В табл.7 перераховані команди протоколу РОРЗ, обов'язкові для працюючої в Інтернет реалізації мінімальній конфігурації.

Таблиця 5. Команди протоколу POP версії 3 (для мінімальної конфігурації)

опис

USER

Ідентифікує користувача з вказаним ім'ям

Вказує пароль для пари клієнт-сервер

Закриває TCP-з'єднання

Сервер повертає кількість повідомлень в поштовій скриньціплюс розмір поштової скриньки

Сервер повертає ідентифікатори повідомлень разом з розмірами повідомлень (параметром команди може бути ідентифікатор повідомлення)

Витягує повідомлення з поштової скриньки (потрібно вказувати аргумент-ідентифікатор повідомлення)

Зазначає повідомлення для видалення (потрібно вказувати аргумент - ідентифікатор повідомлення)

Сервер повертає позитивну відповідь, але не робить ніяких дій

Сервер повертає найбільший номер повідомлення з тих, до яких раніше вже зверталися

Скасовує видалення повідомлення, зазначеного раніше командою DELE

У протоколі РОРЗ визначено кілька команд, але на них дається тільки дві відповіді: + ОК (позитивний, аналогічний повідомленням-підтвердження АСK) і -ERR (негативний, аналогічний повідомленням "не доведено" NAK). Обидва відповіді підтверджують, що звернення до сервера сталося і що він взагалі відповідає на команди. Як правило, за кожним відповіддю слід його змістовне словесний опис. В RFC 1225 є зразки кількох типових сеансів РОРЗ. Зараз ми розглянемо кілька з них, що дасть можливість вловити послідовність команд в обміні між сервером і клієнтом.

авторизація користувача

Після того як програма встановила TCP-з'єднання з портом протоколу РОРЗ (офіційний номер 110), необхідно надіслати команду USER з ім'ям користувача в якості параметра. Якщо відповідь сервера буде + ОК, потрібно послати команду PASSз паролем цього користувача:

CLIENT: USER kcope ERVER: + ОК CLIENT: PASS secret SERVER: + ОК kcope "s maildrop has 2 messages (320 octets) (В поштовій скриньці kcope є 2 повідомлення (320 байтів) ...)

транзакції РОРЗ

команда STATповертає кількість повідомлень і кількість байтів в повідомленнях:

CLIENT: STAT
SERVER: + ОК 2 320

команда LIST(Без параметра) повертає список повідомлень в поштовій скриньці і їх розміри:

CLIENT: LIST SERVER: + ОК 2 messages (320 octets) SERVER 1 120 SERVER: 2 200 SERVER:. ...

команда LISTз параметром повертає інформацію про заданому повідомленні:

CLIENT: LIST 2 SERVER: + ОК 2 200 ... CLIENT: LIST 3 SERVER: -ERR no such message, only 2 messages in maildrop

команда TOPповертає заголовок, порожній рядок і перші десять рядків тіла повідомлення:

CLIENT: TOP 10 SERVER: + ОК SERVER: (Сервер POP висилає заголовки повідомлень, порожній рядок і перші десять рядків тіла повідомлення) SERVER:. ... CLIENT: TOP 100 SERVER: -ERR no such message

команда NOOPне повертає ніякої корисної інформації, За винятком позитивної відповіді сервера. Однак позитивну відповідь означає, що сервер знаходиться в з'єднанні з клієнтом і чекає запитів:

CLIENT: NOOP
SERVER: + ОК

Наступні приклади показують, як сервер POP3 виконує дії. Наприклад, команда RETRвитягує повідомлення з вказаним номером і поміщає його в буфер місцевого UA:

CLIENT: RETR 1 SERVER: + OK 120 octets SERVER: (РОРЗ-сервер висилає повідомлення цілком) SERVER:. . . . . .

команда DELEзазначає повідомлення, яке потрібно видалити:

SERVER: + OK message 1 deleted ... (повідомлення 1 видалено) CLIENT: DELE 2 SERVER: -ERR message 2 already deleted повідомлення 2 вже видалено)

команда RSETзнімає мітки видалення з усіх зазначених раніше повідомлень:

CLIENT: RSET
SERVER: + OK maildrop has 2 messages (320 octets)
(В поштовій скриньці 2 повідомлення (320 байтів))

Як і слід було очікувати, команда QUITзакриває з'єднання з сервером:

CLIENT: QUIT SERVER: + OK dewey POP3 server signing off CLIENT: QUIT SERVER: + OK dewey POP3 server signing off (maildrop empty) CLIENT: QUIT SERVER: + OK dewey POP3 server signing off (2 messages left)

Зверніть увагу на те, що відмічені для видалення повідомлення насправді не видаляються до тих пір, поки не видана команда QUITі не почалася стадія оновлення. У будь-який момент протягом сеансу клієнт має можливість видати команду RSET, І все відмічені для видалення повідомлення будуть відновлені.

Сподобалася стаття? Поділіться з друзями!