如何实现电子邮件验证组件
Posted
技术标签:
【中文标题】如何实现电子邮件验证组件【英文标题】:How to implement Email verification Component 【发布时间】:2011-01-10 14:49:02 【问题描述】:我在这里有一个场景。
我们需要应用程序的新用户 注册。 初始/临时注册时 完成后,我们需要给他们发电子邮件 用于验证的链接(就像所有基于标准用户的 Web 应用程序一样)。我打算在 Asp.Net 中使用 CreateUserWizard 控件,如果提供了凭据,它可以发送电子邮件。
据我所知,
我们可以通过提供所需的凭据和 SMTP 服务器 详细信息来发送此电子邮件,仅此而已。电子邮件中的链接会将客户带回确认注册页面之一,并使用唯一 ID 作为查询字符串。 (当我们在电子邮件中添加链接时)
我的问题是,我们是否可以通过如上所述发送电子邮件而不实施某些电子邮件组件来进行此验证,或者我遗漏了什么。
注意:使用 SqlServer 2005,C#
谢谢
【问题讨论】:
【参考方案1】:您可能会发现this page
是一个关于通过向用户发送电子邮件来验证用户的好教程。正如 Mitchel 所说,您将需要一个 SMTP 服务器(您自己的或来自提供商的)。您可以通过搜索获得任何免费提供商的详细信息。
Gmail:
Host = "smtp.gmail.com"
Port = 587
Hotmail:
Host = "smtp.live.com"
Port = 587
您可以像这样在 web.config 文件中配置您的 SMTP 详细信息(下面使用 hotmail SMTP 服务器):
<system.net>
<mailSettings>
<smtp from="myemail@domain.com">
<network host="smtp.live.com" port="587" userName="myemail@domain.com" password="mypassword"/>
</smtp>
</mailSettings>
</system.net>
如果您决定使用上述免费 SMTP 服务器,请确保遵守他们的规则并保持在他们的使用限制范围内。
【讨论】:
@keyboardP 链接已损坏。 @TomMiller - 试试这个(相同的链接,但它使用网络存档)web.archive.org/web/20110425095538/http://…【参考方案2】:您必须有一个可以用来发送电子邮件的 SMTP 服务器,但是只要您有一个使用 SMTP 的电子邮件帐户,您就不需要做任何其他特殊的事情来发送电子邮件.
请务必在 .NET 中正确配置 SMTP 客户端,无论是手动还是通过 System.Net 配置节点的 web.config。
【讨论】:
以上是关于如何实现电子邮件验证组件的主要内容,如果未能解决你的问题,请参考以下文章
如何在验证电子邮件之前阻止 Firebase/Vue.js 中的用户身份验证
用户注册后如何在 aws cognito 中自动验证电子邮件。稍后状态后在 Cognito 中验证电子邮件