Asp.net mvc 3 asp.net mvc 3-发送电子邮件并获取验证任务的返回(注册、表单验证…)
我有一个用户填写的注册表格,一旦填写了表格,注册将推迟到用户收到电子邮件,以检查他的电子邮件是否正常,然后当他回复电子邮件时,注册将完全进行 我也希望这个过程是自动的,不需要用户输入任何数字等,只需要他点击电子邮件确认,并在我这边也自动 如果可能的话,我希望该过程也可以用于注册过程以外的其他任务 我是否需要对生成的123456进行全方位检查/123456,或者是否有更好的方法,组件、nuget可以完成这项工作?你回来会有帮助的Asp.net mvc 3 asp.net mvc 3-发送电子邮件并获取验证任务的返回(注册、表单验证…),asp.net-mvc-3,email-validation,Asp.net Mvc 3,Email Validation,我有一个用户填写的注册表格,一旦填写了表格,注册将推迟到用户收到电子邮件,以检查他的电子邮件是否正常,然后当他回复电子邮件时,注册将完全进行 我也希望这个过程是自动的,不需要用户输入任何数字等,只需要他点击电子邮件确认,并在我这边也自动 如果可能的话,我希望该过程也可以用于注册过程以外的其他任务 我是否需要对生成的123456进行全方位检查/123456,或者是否有更好的方法,组件、nuget可以完成这项工作?你回来会有帮助的 谢谢如果你是一名开发人员,我建议你至少从代码开始。。。然后再问一次,
谢谢如果你是一名开发人员,我建议你至少从代码开始。。。然后再问一次,如果你在提供你所做工作的样本时遇到了困难
你要做的基本上是使用一个临时url,发布到一个页面来完成注册 如果你是一名开发人员,我建议你至少从代码开始。。。然后再问一次,如果你在提供你所做工作的样本时遇到了困难
你要做的基本上是使用一个临时url,发布到一个页面来完成注册 你似乎在正确的轨道上 我经常做类似的事情。它不是通用的,因为我不需要它,但你可以很容易地改变它 用户注册后,我会发送一封激活电子邮件,其中包含一个链接,单击该链接可导航到
http://domain/member/activate/id
其中id是GUID。这就是我所需要的。我查找成员id并激活它。有人猜到新会员id的可能性很小,即使猜到了,也离撞车相去甚远
从我所能告诉你的,你需要一些更通用和更安全的东西。您可以创建一些密钥(比如新的GUID),与用户一起存储,然后激活调用:http://domain/member/activate/id?key={guid}
。你甚至可以加密密钥。但这取决于你
对于可以重复使用且更通用的东西,您可以创建一个包含激活ID列表的激活组件。但要激活特定类型的实体(如用户注册或表单验证),您需要有一种在后端执行该操作的方法。例如,当您调用http://domain/activation/activate/id
内部is查找id并获取类型。当然,激活请求是在用户注册时创建的。您可能希望存储一些到期/超时,因为用户可能永远不会激活
对于每种类型,您可以在相关控制器上设置激活机制:member/activate/key
或formvalidation/activate/key
。因此,当激活控制器收到激活请求时,它会根据类型配置一个路由列表,并导航到相关路由以执行“实际”激活
另一种选择是让进程内组件执行激活,例如:由MemberActivator
或FormValdationActivator实现的IActivator
接口,然后让IActivatorProvider
实现根据类型为您提供相关的提供者(.NET类型或字符串类型—由您自己决定)
如果您愿意,您甚至可以将ActivationRequestCommand
传递给服务总线端点
所以你有很多选择。HTH你似乎在正确的轨道上
我经常做类似的事情。它不是通用的,因为我不需要它,但你可以很容易地改变它
用户注册后,我会发送一封激活电子邮件,其中包含一个链接,单击该链接可导航到http://domain/member/activate/id
其中id是GUID。这就是我所需要的。我查找成员id并将其激活。有人猜测新成员id的可能性很小,即使他们猜到了,也很难远远不是火车撞车
据我所知,您需要一些更通用、更安全的东西。您可以创建一些密钥(如新的GUID),与用户一起存储,然后激活调用:http://domain/member/activate/id?key={the guid}
。您甚至可以加密密钥。但这取决于您
对于可以重复使用且更通用的东西,您可以创建一个包含激活ID列表的激活组件。但要激活特定类型的实体(如用户注册或表单验证)您需要有一种在后端执行该操作的方法。例如,当您调用http://domain/activation/activate/id
内部is查找id并获取类型。当然,激活请求是在用户注册时创建的。您可能希望存储一些到期/超时,因为用户可能永远不会蒂维特
对于每种类型,您可以在相关控制器上设置一个激活机制:member/activate/key
或formvalidation/activate/key
。因此,当您收到激活请求时,激活控制器会根据类型设置一个路由列表,并导航到相关路由以执行“实际”激活。
另一种选择是让进程内组件执行激活,例如:由MemberActivator
或FormValdationActivator实现的IActivator
接口,然后让IActivatorProvider
实现根据类型为您提供相关的提供者(.NET类型或字符串类型—由您自己决定)
您甚至可以传递激活请求