我正在尝试通过在web.config文件中存储用户名和密码来登录,如下所示
<authentication mode="Forms">
<forms loginUrl="Admin Login.aspx" defaultUrl="~/Home.aspx">
<credentials>
<user name="Admin" password="123" />
</credentials>
</forms>
</authentication>
我在提交按钮上编写了这段代码
if (FormsAuthentication.Authenticate(TxtUsername.Text, TxtPassword.Text))
{
Response.Redirect(FormsAuthentication.GetRedirectUrl(TxtUsername.Text, false));
}
但它没有被重定向..任何建议..?
答案 0 :(得分:2)
您需要在重定向之前调用FormsAuthentication.SetAuthCookie()
。
if (FormsAuthentication.Authenticate(TxtUsername.Text, TxtPassword.Text))
{
FormsAuthentication.SetAuthCookie(TxtUsername.Text, false);
Response.Redirect(FormsAuthentication.GetRedirectUrl(TxtUsername.Text, false));
}
答案 1 :(得分:2)
实际罪魁祸首是您的credentials
标签..
把它改成以下..它应该对你有用..
..
<credentials passwordFormat="Clear">
...
并使用
FormsAuthentication.RedirectFromLoginPage(TxtUsername.Text, false);
验证后,将设置authCookie并重定向到请求的页面或默认页面。