2009-08-30 17 views
36

Estoy buscando un servidor de prueba smptp gratuito que puede guardar correos electrónicos en los archivos para mis pruebas de desarrollo. Como mi entorno de desarrollo es Windows, prefiero que el servidor de prueba de correo electrónico se ejecute en Windows, pero puedo considerar instalar cualquier otra alternativa basada en Linux.servidor de desarrollo smtp para windows

Respuesta

35

hay algunas:

en su web.config para simplemente almacenar los correos electrónicos en el sistema de archivos (la forma de configuración de lo que "sedoso" ha propuesto en el código):

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

Marc

+0

instalación independiente de antix fue la solución exacta para mi problema. Este es mejor ya que tuve un problema con el servidor de depuración python que no es adecuado para mensajes codificados UTF-8. – Tolga

+0

La última opción funcionó para mí, además instalé un [EML Reader] (http://www.emlreader.com/) para una mejor visualización. –

11

- Editar:

Este consejo sólo es válida si está utilizando .NET

Comprobar this a cabo. Si establece de manera apropiada, se acaba de almacenar sus mensajes de correo electrónico en el disco :)

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

- Edit

Sólo en caso de que algunas personas no lo entienden, esto significa que no es necesario otro SMTP servidor para prueba/dev, usted acaba de establecer la variable apropiadamente.

- Edit

Para completar, como se muestra a continuación marc_s, puede configurar esto en configuraciones muy bien a través de:

<system.net> 
    <mailSettings> 
     <smtp deliveryMethod="SpecifiedPickupDirectory"> 
     <specifiedPickupDirectory 
      pickupDirectoryLocation="c:\foo\emails\" /> 
     </smtp> 
    </mailSettings> 
</system.net> 
+0

Por supuesto, supone que el OP está utilizando C# para escribir su software. –

+1

Sí. Haces un punto justo Martin, supuse que estaba usando .NET, pero ahora noté que no está especificado en la publicación original. Mi error por estar en un estado de ánimo '.NET' :) –

+0

Puede configurar esto sin cambiar ningún código en el archivo de configuración de la aplicación: elemento 'confguration \ system.net \ mailSettings \ smtp'. – Thorarin

5

El módulo de Python smtpd tiene una DebuggingServer que imprime todos los mensajes a la salida estándar. Si los redirige a un archivo, debe hacerlo.

+0

Ya tenía Python instalado, así que me tomó algunos minutos buscar un ejemplo y luego implementar el servidor de depuración. Tengo un pequeño problema al mostrar correos electrónicos con codificación UTF-8. Cuando intento enviar correos electrónicos a través de gmail, no hay ningún problema con los mensajes codificados en UTF-8, sin embargo, el módulo smtpd de python no imprime caracteres que no sean ASCII correctamente. ¿Tiene alguna sugerencia sobre este tema? – Tolga

+0

En general, los correos electrónicos deben codificarse utilizando la codificación entre comillas imprimibles o base64 y transferirse solo en codificación ASCII de 7 bits (busque MIME RFC en Google). Si bien algunas extensiones de servidor SMTP permiten el envío de correos electrónicos de 8 bits, no es algo con lo que deba contar. –

+0

La forma oficial en que Python procesa los mensajes MIME es el paquete de correo electrónico. Sin embargo, hacer eso puede ser excesivo, por lo que recomiendo escribir todos los mensajes en un archivo mbox (ya sea añadiéndolo directamente o a través del módulo de buzón de correo) y luego abra el módulo en Thunderbird. –

23

sé que este es un antiguo puesto sin embargo también sé sobre el que http://smtp4dev.codeplex.com/ También recomendaría. Se encuentra en su barra de tareas y luego aparece cuando le envía correos electrónicos.Le permite luego examinar el correo electrónico con bastante profundidad.

5

Utilizamos Mailtrap para esto. Le brinda una cuenta de servidor smtp remoto y acceso directo a todos los correos electrónicos que contiene. Entonces solo ingresa la credencial smtp dada en su aplicación y después de eso todos los correos electrónicos enviados por su sistema serán visibles en mailtrap. Y puede ver fácilmente el código fuente del correo y descargarlo a su sistema local. Puede ver el ejemplo here

En mailtrap puede tener hasta cuenta SMTP como desee (cuenta diferente para diferentes entornos de aplicación, o aplicación diferente) También puede administrar el acceso a su cuenta (la gente por lo que sólo confianza se sí sus correos electrónicos) y puede reenviar algunos correos electrónicos a direcciones de correo electrónico reales.

2

Papercut (http://papercut.codeplex.com/discussions) es el más simple y elegante hasta el momento. Archivo exe simple que escucha el puerto 25 y muestra correos electrónicos.

+0

Lea de nuevo la pregunta: "Estoy buscando un servidor smptp de prueba gratuito que pueda ** guardar correos electrónicos en archivos **" - ¿Soporta PaperCut esto? – Kev

+0

Papercut es una herramienta terrible, no puede manejar mensajes múltiples al mismo tiempo. Recomiendo evitarlo. –

+0

Acabo de probar Papercut ahora y puede hacer clic derecho en el correo y ver el archivo físico que guardó. Este es un buen software en mis libros. – TheLegendaryCopyCoder

Cuestiones relacionadas