我有一个使用Membership登录(通过FormsAuthentication)的MVC4应用程序。
这在web.config中定义如下。我的默认URL是主目录(~/):
<roleManager enabled="true" />
<authentication mode="Forms">
<forms defaultUrl="~" loginUrl="~/Account" />
</authentication>
在我的AccountController的登录post方法中,以下代码是相关的。当用户使用有效凭据点击登录时,将执行此代码。
if (Membership.ValidateUser(creds.Username, creds.Password))
{
FormsAuthentication.RedirectFromLoginPage(creds.Username, false);
return null;
}
现在,如果我匿名地导航到:~/Admin,我将被重定向到~/Account以进行登录,这是完美的。我可以看到URL的格式如下:
http://localhost:23759/Account?ReturnUrl=%2fAdmin
但是,当我成功登录后,我被重定向到主页(~/),而不是 ~/Admin
请帮忙!非常感谢!
编辑:找到了实际问题:它是未接收查询字符串的POST方法