- thinkphp中foreach
- 淘宝运营和京东运营有什么区别
- 通过composer安装TP依赖的详细教程
- Asp.net 备份和还原SQL Server及压缩Access数据库方法 .
- C#向access数据库插入货币类数值
- IE下判断IE版本的语句...[if lte IE 6]……[endif]
- C#中AutoMapper的使用
- .NET中26个优化性能方法
- 什么是长尾关键词?
- 为什么网站没有收录?
邮箱:
手机:15383239821
解决User.Identity.IsAuthenticated==false 或User.Identity.Name==string.empty的问题
HttpContext.Current.User.Identity.IsAuthenticated=false;
HttpContext.Current.User.Identity.Name==""
解释:当用户登录时,服务器为确认客户端通过验证要通过cookie向客户端写验证(Authenticat)信息,在登录页面刚验证完成后服务器 还没有把cookie 回发到Client,所以会没有值,当服务器第二次Response的时候,就会从客户端读取Cookie,要想有此Cookie还要在 web.config文件中配置相应的参数
<system.web>
<authentication mode="Forms">
<forms domain="bokoAdmin" timeout="20" loginUrl="Login.aspx" path="/"></forms>
</authentication>
<authorization>
<allow users="*"/>
</authorization>
<system.web>
程序验证:
if (Membership.ValidateUser(tbx_username.Text.TrimEnd(), tbx_password.Text.TrimEnd()))
{
FormsAuthentication.SetAuthCookie(tbx_username.Text.TrimEnd(), true,FormsAuthentication.FormsCookiePath);
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
1, tbx_username.Text, DateTime.Now, DateTime.Now.AddMinutes(20), false, tbx_username.Text);
// generate new identity
FormsIdentity identity = new FormsIdentity(ticket);
HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, FormsAuthentication.Encrypt(ticket));
// write to client.
Response.Cookies.Add(cookie);
}
其中加粗体为主要语句,有此一句就可以实现HttpContext.Current.User.Identity.IsAuthenticated=true;
-
2013-05-06c#.net常用函数和方法集
-
2010-07-20如何判断高质量外部链接
-
2023-10-03PHP中$_SERVER的详细用法
-
2013-11-22移动控件介绍及详细使用方法:Calendar控件
-
2013-06-08js计算时间差
-
2025-02-04deepseek-r1的1.5b、7b、8b、14b、32b、70b和671b有啥区别?
