smtp-сервер разработки для windows

Я ищу бесплатный тестовый smptp-сервер, который может сохранять электронные письма в файлы для моих тестов разработки. Поскольку моя среда разработки - это Windows, я предпочитаю запускать тестовый почтовый сервер в Windows, но я могу рассмотреть возможность установки любых других альтернатив на основе Linux.


person Tolga    schedule 30.08.2009    source источник


Ответы (7)


Есть несколько:

  • SMTP Impostor (бывший SMTP-сервер Antix), NuGet package - выглядит очень хорошо
  • Dumbster - поддельный SMTP-сервер под лицензией Apache

Или вы также можете настроить его в своем web.config, чтобы просто хранить электронные письма в файловой системе (способ конфигурации того, что «шелковистый» предложил в коде):

<system.net>  
   <mailSettings>  
      <smtp deliveryMethod="SpecifiedPickupDirectory">  
         <specifiedPickupDirectory 
             pickupDirectoryLocation="c:\temp\mails\"/>  
      </smtp>  
   </mailSettings>  
</system.net>  

Марк

person marc_s    schedule 30.08.2009
comment
Автономная установка antix была точным решением моей проблемы. Это лучше, так как у меня была проблема с сервером отладки python, который не подходит для сообщений в кодировке UTF-8. - person Tolga; 30.08.2009
comment
Последний вариант сработал для меня, я дополнительно установил [EML Reader] (emlreader.com) для лучшего просмотра . - person Ronald Nsabiyera; 20.05.2015

Я знаю, что это старый пост, но я также знаю о http://smtp4dev.codeplex.com/, который Я тоже рекомендую. Он находится на панели задач, а затем всплывает, когда вы отправляете ему электронные письма. Это позволяет вам затем достаточно глубоко изучить электронное письмо.

person Jonathan Stanton    schedule 01.03.2011

-- Редактировать:

Этот совет действителен, только если вы используете .NET

Проверьте это здесь. Если вы установите его правильно, он просто сохранит ваши электронные письма на диске :)

SmtpClient client = ...;
client.PickupDirectoryLocation = @"c:\foo\emails\"; //"
client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;

-- Редактировать

На всякий случай, если некоторые люди этого не понимают, это означает, что вам не нужен другой SMTP-сервер для test / dev, вы просто установите соответствующую переменную.

-- Редактировать

Для полноты, как показано ниже marc_s, вы можете настроить это в конфигурациях с помощью:

<system.net>  
   <mailSettings>  
      <smtp deliveryMethod="SpecifiedPickupDirectory">  
         <specifiedPickupDirectory 
             pickupDirectoryLocation="c:\foo\emails\" />  
      </smtp>  
   </mailSettings>  
</system.net>
person Noon Silk    schedule 30.08.2009
comment
Это, конечно, предполагает, что OP использует C # для написания своего программного обеспечения. - person Martin v. Löwis; 30.08.2009
comment
да. Вы справедливо отметили, Мартин, я предполагал, что он использует .NET, но теперь заметил, что это не указано в исходном сообщении. Моя ошибка в том, что я нахожусь в состоянии ума ".NET" :) - person Noon Silk; 30.08.2009
comment
Вы можете настроить это, не изменяя никакого кода в файле конфигурации приложения: confguration\system.net\mailSettings\smtp element. - person Thorarin; 30.08.2009
comment
Торарин: Да, «marc_s» показывает, как это сделать, ниже. Но я не считаю правильным вставлять его ответ в свой. - person Noon Silk; 30.08.2009

Модуль smtpd Python имеет DebuggingServer, который выводит все сообщения в стандартный вывод. Если вы перенаправите их в файл, все готово.

person Martin v. Löwis    schedule 30.08.2009
comment
У меня уже был установлен python, поэтому мне потребовалось несколько минут, чтобы найти пример и реализовать сервер отладки. У меня небольшая проблема с отображением писем в кодировке UTF-8. Когда я пытаюсь отправлять электронные письма через gmail, проблем с сообщениями в кодировке UTF-8 нет, однако модуль smtpd в python не печатает правильно символы, отличные от ascii. Есть ли у вас предложения по этому поводу? - person Tolga; 30.08.2009
comment
Как правило, сообщения электронной почты необходимо кодировать с использованием кодировки цитируемой печати или base64 и передавать только в 7-битной кодировке ASCII (ищите MIME RFC в Google). Хотя некоторые расширения SMTP-сервера позволяют отправлять 8-битные сообщения электронной почты, на это не стоит рассчитывать. - person Filip Navara; 30.08.2009
comment
Официальный способ обработки сообщений MIME в Python - это пакет электронной почты. Однако это может быть излишним, поэтому я рекомендую записывать все сообщения в файл mbox (либо напрямую добавляя его, либо через модуль почтового ящика), а затем открывать модуль в Thunderbird. - person Martin v. Löwis; 30.08.2009

Для этого мы использовали Mailtrap. Он дает вам учетную запись удаленного SMTP-сервера и прямой доступ ко всем почтовым сообщениям в нем. Таким образом, вы просто вводите данные учетные данные smtp в свое приложение, и после этого вся электронная почта, отправленная вашей системой, будет видна в mailtrap. И вы можете легко посмотреть исходный код почты и загрузить его в свою локальную систему. Вы можете увидеть пример здесь

В mailtrap у вас может быть столько учетных записей smtp, сколько вы хотите (разные учетные записи для разных сред приложений или разные приложения). Также вы можете управлять доступом к своей учетной записи (так что только доверенные люди будут получать ваши электронные письма), и вы можете пересылать некоторые электронные письма на настоящие адрес электронной почты.

person VVN    schedule 22.11.2011

Ниже приведены ссылки, которые я нашел

Используйте в зависимости от выбранного вами языка и платформы.

Также есть более ранняя публикация для .NET Тестирование SMTP с .net

person Santosh Gokak    schedule 30.08.2009

Papercut (http://papercut.codeplex.com/discussions) на данный момент является самым простым и элегантным. . Простой exe-файл, который прослушивает порт 25 и отображает электронные письма.

person TROLLLOL    schedule 01.04.2013
comment
Пожалуйста, перечитайте вопрос: я ищу бесплатный тестовый сервер smptp, который может сохранять электронные письма в файлы. Поддерживает ли PaperCut это? - person Kev; 02.04.2013
comment
Papercut - ужасный инструмент, он не может обрабатывать несколько сообщений одновременно. Я бы рекомендовал избегать этого. - person Tony Ashworth; 17.06.2014
comment
Я только что попробовал Papercut, и вы можете щелкнуть правой кнопкой мыши на письме и просмотреть физический файл, который он сохранил. Это хорошее программное обеспечение в моих книгах. - person TheLegendaryCopyCoder; 20.02.2016