我们的网站向用户在我们网站上输入的电子邮件地址发送电子邮件。有些人输入垃圾电子邮件地址。我们如何才能查明,至少输入地址的主机是否有效?只是想在输入主机的 25 端口打开一个套接字?
更新:我找到了一个用于 DNS 东西的 Java 库。我应该检查什么记录?
我们的网站向用户在我们网站上输入的电子邮件地址发送电子邮件。有些人输入垃圾电子邮件地址。我们如何才能查明,至少输入地址的主机是否有效?只是想在输入主机的 25 端口打开一个套接字?
更新:我找到了一个用于 DNS 东西的 Java 库。我应该检查什么记录?
您需要从 DNS 中查找主机部分的 MX 记录……但有很多极端情况。不要重新发明轮子(你一定会弄错),尝试找到一个现有的库。不过,我只知道来自 Snertsoft for C 的那个(集成到商业milter-sender中)。
[免责声明:我是 milter-sender 的快乐用户]
[编辑] 查看RFC 5321 Sec.5,它描述了查找正确主机的规则。
我希望您正在验证(使用正则表达式)输入了有效的电子邮件地址。否则,检查主机是否有效是没有意义的。