FormsAuthentication不工作.IsAuthenticated总是返回False
本文关键字:返回 False IsAuthenticated 工作 FormsAuthentication | 更新日期: 2023-09-27 17:50:24
我正在使用ASP.net开发网站,我想实现基于表单的身份验证。在网络上。配置
<system.web>
<authentication mode="Forms" >
<forms loginUrl="login.aspx" protection="All" path="/" timeout="30" name=".ASPXFORMSDEMO">
</forms>
</authentication>
</system.web>
在登录按钮中单击I use this。
FormsAuthenticationTicket ticket;
string cookieString;
HttpCookie cookie;
ticket = new FormsAuthenticationTicket(1, txtiLoginEmail.Value, DateTime.Now, DateTime.Now.AddMinutes(5), chbRememberMe.Checked, null);
cookieString = FormsAuthentication.Encrypt(ticket);
cookie = new HttpCookie(FormsAuthentication.FormsCookieName, cookieString);
if (chbRememberMe.Checked)
{
cookie.Expires = ticket.Expiration;
cookie.Path = FormsAuthentication.FormsCookiePath;
}
Response.Cookies.Add(cookie);
string strRedirect = "post.aspx";
Response.Redirect(strRedirect);
我有一个叫做post的页面。aspx。我希望此页面仅供经过身份验证的用户访问。在post的页面加载事件中。我使用这个代码来检查它
bool isAuthenticated = HttpContext.Current.User != null && HttpContext.Current.User.Identity.IsAuthenticated;
但是上面的代码总是返回false。我哪里做错了?
我想你忘了加上:
FormsAuthentication.SetAuthCookie(/*UserHere*/ ,false);