我有一个使用表单身份验证在asp.net mvc中构建的Web应用程序。
我想知道如何正确实施新用户必须输入邀请代码才能在我的网站上创建帐户的系统。
基本上,我希望尽可能使用开箱即用的帐户控制器和模型来创建帐户。
如果用户没有输入有效的邀请码,我是否只需要阻止访问“注册”页面?
有关如何完成此任务的任何示例?
更新
似乎最简单的解决方案是将确认代码设置为“注册”页面上的必填字段。但是,我觉得这不是解决这个问题最优雅的方法。
另一个想法:让Registation页面GET方法将InviteCode作为参数(在查询字符串中传递)并在代码为null或无效时重定向到另一个页面。有没有人看到这种方法有任何问题?
答案 0 :(得分:4)
作为最终用户,我想在进入帐户详细信息之前输入代码。如果我输入它们只是为了发现我的代码无效,我会非常生气。
所以你的选择可能是:
注册码与帐户详细信息一起发布以进行其他验证。
可以使用远程验证,json调用等来检查字段。
远程验证:http://completedevelopment.blogspot.com/2011/08/remote-ajax-validation-in-mvc3.html
或json调用验证,或首页,或.. 这里的选项真的取决于你。令牌的验证应该足够简单,并且不必与您的帐户代码完全相关。