Протокол IMAP ориентирован на работу с почтовыми ящиками. Команда SELECT выбирает почтовый ящик, с которым происходит работа. В данном примере пользователь выбрал почтовый ящик с именем «inbox». Сервер IMAP отображает состояние ящика. Можно видеть, что ящик содержит три сообщения, с каждым из которых связан ряд флагов. Флаги позволяют управлять сообщениями в почтовом ящике, помечая их в качестве прочитанных (Seen), непрочитанных (Unseen), удаленных (Deleted) и т.д.
Команда FETCH позволяет получить сообщение из почтового ящика. В данном примере пользователь принимает текст сообщения, то есть его юдержательную часть. Однако можно загрузить только заголовки сообщений или флаги. Приняв сообщение, пользователь удаляет его, записывая флаг Deleted при помощи команды STORE. Команда DELETE используется не для удаления сообщений, а для удаления почтовых ящиков. Отдельные сообщения отмечаются для удаления установкой флага Delete. Сообщения с флагом Delete не удаляются, пока не будет выполнена команда EXPUNGE либо почтовый ящик не будет закрыт явным образом посредством команды CLOSE, как в приведенном примере. Сеанс завершается командой LOGOUT.
Очевидно, протокол IMAP сложнее протокола POP и вплотную подошел к той границе, за которой набор команд вручную становится неэффективным. Разумеется, на практике редко применяется ручной набор. Рабочие станции и серверы обмениваются командами автоматически. Приведенный пример призван лишь проиллюстрировать работу протокола IMAP. Скорее всего, единственной проверкой IMAP, выполняемой вручную, для вас станет проверка факта работоспособности демона imapd. Чтобы выполнить такую проверку, нет необходимости даже регистрироваться на сервере; достаточно увидеть, что сервер реагирует на соединение, установленное при помощи telnet. Затем остается лишь набрать команду LOGOUT, чтобы мягко закрыть соединение.
- << Назад
- Вперёд