作为我的应用程序配置过程的一部分,我有一个健全性检查器来验证所有用户提供的数据。这包括应用程序用于发送电子邮件的电子邮件服务器设置。
我想对这些设置进行简单的健全性检查,而无需实际发送任何电子邮件。如果这可以支持所有标准风格的 SMTP 设置,包括带有身份验证/ssl/等的设置,那就太好了。
它不需要详尽无遗,但覆盖面越多越好。
目前我所做的就是验证我可以在给定端口上打开到给定服务器的连接。稍微深一点的东西会很好。
注意:我不是要验证电子邮件地址——这与这个问题无关。
您只需打开与用户提供的服务器和端口的原始连接并执行
HELO Server.Domain.Com
Mail From: validaccount@domain.com
Run Code Online (Sandbox Code Playgroud)
查看您是否收到有效的 HELO 响应和 Sender OK Response(如果启用了 smtp 身份验证)。
与直接 telnet 到服务器时所做的相同。
http://www.petri.co.il/test_smtp_service.htm
这也可能有用
http://qmail.jms1.net/test-auth.shtml