【问题标题】:Email Verification in C#C# 中的电子邮件验证
【发布时间】:2014-04-02 10:30:34
【问题描述】:

在我的表单中有一个文本框和一个按钮名称作为验证。在这个文本框中,我总是要插入电子邮件地址,所以我的问题是,每当我在 TextBox 中输入任何电子邮件地址时,它都必须检查我输入的电子邮件地址是否存在。例如,如果我输入“abc09@gmail.com”,那么它必须在 gmail 服务器上检查该地址是否存在

using System.Windows.Forms;

namespace email_verifier
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void verify_Click(object sender, EventArgs e)
        {
        }
    }
}

【问题讨论】:

  • @MarcoAcierno 我不会说这是重复的。而是如何确保您可以实际向该地址发送电子邮件。 “重复”是您如何验证它是一个正确的电子邮件地址。
  • OP 不是在客户端寻找验证,而是通过检查 EmailID 是否已经存在来寻找服务器端验证。
  • “知道”电子邮件地址是否有效的唯一方法是通过某种方式特定电子邮件得到回复收件人应该知道(例如注册的“点击电子邮件确认链接”步骤)。一些邮件服务器会报告邮件传递失败(但由于代理和其他原因,它不是同步操作,除非您直接与 感觉 像报告地址失败的权威 SMTP 服务器交谈).. 不确定是什么这些天来 gmail 做。

标签: c# winforms email


【解决方案1】:

尝试用用户在邮件服务器上输入的相同名称注册一个新帐户,并跟踪服务器响应以查看它是否是注册地址。

这有点复杂,但我认为它会工作。

【讨论】:

  • 祝您在任意服务器上自动创建电子邮件帐户好运。
【解决方案2】:

例如,如果我输入“abc09@gmail.com”,那么它必须在 gmail 服务器上检查该地址是否存在

我在 Google 中输入了“gmail validate email address”并找到了this

SMTP 提供 VRFY 和 EXPN 动词来检查帐户或邮件列表是否存在。但是,大多数服务器管理员从他们的邮件配置中禁用这些动词,以防止黑客利用用户列表。 据说 Gmail 和 Yahoo 已禁用 VRFY。

您可以为这些服务器尝试的另一种选择是向用户发送电子邮件以确认他们的电子邮件地址的链接。当然,它不像实时电子邮件验证那样性感,但对所有人来说更安全派对。

强调我的。

【讨论】:

    猜你喜欢
    • 2014-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 2018-10-06
    相关资源
    最近更新 更多