Я ищу бесплатный тестовый smptp-сервер, который может сохранять электронные письма в файлах для моих тестов разработки. Поскольку моя среда разработки - это окна, я предпочитаю проверять почтовый сервер для работы в Windows, но я могу рассмотреть возможность установки любых других альтернатив на основе Linux.
Разработка smtp-сервера для окон
Ответ 1
Есть несколько:
- SMTP Impostor (ранее Antix SMTP Server), пакет NuGet - выглядит очень хорошо.
- Dumbster - поддельный SMTP-сервер под лицензией Apache
Или вы также можете настроить его в web.config, чтобы просто сохранить электронные письма в файловой системе (вариант конфигурации того, что "шелковистый" предложил в коде):
<system.net>
<mailSettings>
<smtp deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory
pickupDirectoryLocation="c:\temp\mails\"/>
</smtp>
</mailSettings>
</system.net>
Марк
Ответ 2
Я знаю, что это старый пост, но я также знаю о http://smtp4dev.codeplex.com/, который я также рекомендовал бы. Он сидит на панели задач и затем появляется, когда вы отправляете ему электронные письма. Это позволяет вам изучить электронную почту на довольно большой глубине.
Ответ 3
- Изменить:
Этот совет действителен только в том случае, если вы используете .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>
Ответ 4
Модуль Python smtpd имеет DebuggingServer, который печатает все сообщения в stdout. Если вы перенаправите их в файл, вы должны сделать.
Ответ 5
Мы использовали Mailtrap. Это дает вам удаленную учетную запись smtp-сервера и прямой доступ ко всем письмам в ней. Таким образом, вы просто вводите заданные учетные данные smtp в своем приложении, и после этого все электронные письма, отправленные вашей системой, будут видны на mailtrap. И вы можете легко просмотреть исходный код почты и загрузить его в свою локальную систему. Вы можете увидеть пример здесь
На mailtrap вы можете иметь столько smtp-аккаунтов, сколько хотите (другая учетная запись для разных приложений или другого приложения). Также вы можете управлять доступом к своей учетной записи (так что только доверенные люди будут отправлять ваши электронные письма), и вы можете перенаправить некоторые электронной почты на реальные адреса электронной почты.
Ответ 6
Ниже приведены ссылки, которые я нашел
Используйте в зависимости от языка и платформы по вашему выбору.
Существует также более ранняя публикация для .NET. Тестирование SMTP с помощью .net
Ответ 7
Papercut (http://papercut.codeplex.com/discussions) является самым простым и самым элегантным до сих пор. Простой exe файл, который прослушивает порт 25 и отображает сообщения электронной почты.