Мой сервер POP3 отправляет мне как отправленные, так и полученные сообщения - как окончательно отличить - PullRequest
0 голосов
/ 19 февраля 2019

По результатам поиска я могу найти много подобных вопросов, но все они, насколько я могу судить, кажутся мне либо неверно понятыми, либо не совсем совпадают с этим вопросом.

Предположительно (возможно, нет, но это кажется маловероятным) процесс / сервер электронной почты знает, какие электронные письма он содержит в записи, потому что они «прибыли», а какие - в записи, потому что кто-то использовал SMTP или что-то подобное, чтобы сообщить серверу «отправить» электронную почтуout.

Если POP3-клиент получает много электронных писем с сервера и (мы знаем из наблюдения, что) некоторые из этих электронных писем являются электронными письмами, которые серверу было приказано отослать, а некоторые являются электронными письмами, которые он получил, тогдасервер pop3 противоречит протоколу, потому что он обеспечивает загрузку, электронные письма, которые концептуально НЕ находятся в папке «Входящие» или они могут свободно отправлять то, что хотят, так как POP3 не имеет понятия папок, а электронные письма - это электронные письма.

* 1006В любом случае, существует ли простой и надежный способ для клиента различать эти электронные письма?Или проверяет поле from против учетной записи лучшее на предложение?Я полагаю, что сообщения pop3 поддерживают флаги, некоторые API POP3 поддерживают, но, возможно, серверы не обязаны давать какие-либо гарантии, плюс я не вижу четкого описания их значения, поэтому я не вижу возможности их последовательного использования для различения.

Для реализации я предпочитаю Java и com.sun.mail.pop3

Я понимаю, что есть IMAP, но на этом этапе я хотел бы, если возможно, внести очень небольшие изменения вРеализация клиента POP3 и посмотрите на переключение в IMAP в другой раз.

Спасибо.

Ответы [ 2 ]

0 голосов
/ 20 февраля 2019

«Окончательное различие» зависит от того, как / почему сообщения отображаются в POP3.Однако наилучшее решение по типу усилий включало бы сканирование подстроки в поле От в поисках того, что было предоставлено в команде USER.Если используется механизм аутентификации на основе токенов, вам необходимо получить идентификатор электронной почты от того, кто выдал токен, и найти , что в заголовке From.

В качестве фона, базовыйКонцепция в POP3 называется «maildrop».Большинство людей приравнивают это к «Входящим» в терминах IMAP, но это не обязательно то же самое.Например, сообщение, отфильтрованное во время хранения в пользовательскую папку , может отобразиться в почтовом ящике POP3, даже если оно не отображается в папке «Входящие» через IMAP или веб-почту.То, что входит в maildrop и, следовательно, видно в POP3, может варьироваться от реализации к реализации.

Если пользователь выбирает только POP3 / SMTP и Webmail, он иногда сам отправляет BCC при отправке, чтобы убедиться, чтокопия существует где-то на сервере, чтобы они могли получить к ней доступ через веб-почту, если это необходимо.Это связано с тем, что очень немногие реализации SMTP автоматически сохраняют сообщение в почтовом ящике пользователя, а POP3 не имеет механизма для сохранения сообщения в любом месте, кроме локального для агента пользователя.Для тех SMTP-серверов, которые делают автоматически сохраняют отправленную почту в почтовом ящике, они могут просто поместить ее в почтовый ящик, когда дело доходит до серверов POP3.

0 голосов
/ 19 февраля 2019

POP3 - это протокол для получения сообщений из вашего почтового ящика.Для отправки сообщений вы используете протокол SMTP.

В моем понимании вы связываетесь с сервером по протоколу SMTP и доставляете сообщение на сервер.Затем сервер доставляет эту почту соответствующему целевому почтовому серверу и сохраняет сообщение в этой папке входящих сообщений.С другой стороны, вы связываетесь с вашим собственным почтовым ящиком, используя POP3, чтобы получить сообщение, которое хранится в вашем почтовом ящике.Таким образом, никогда не должно быть никакого конфликта между входящей и исходящей электронной почтой, так как это две разные вещи, и серверы, предоставляющие pop3 и smtp для вашего почтового ящика, могут быть двумя разными серверами в разных местах.Таким образом, на одном почтовом сервере входящие и исходящие должны находиться в двух разных местах хранения.

...