跨浏览器会话的cookie

如果发出了持久 Cookie(跨浏览器会话保存的 Cookie),则为 true;否则为 false


 System.Web.Security.FormsAuthenticationTicket tk = new System.Web.Security.FormsAuthenticationTicket(

         1,                 //指定版本号:可随意指定

"Admin", //登录用户名:对应 Web.config 中 <allow users="Admin" … /> 的 users 属性

         System.DateTime.Now,   //发布时间

         System.DateTime.Now.AddYears(100),   //失效时间:100 年以后,够永够久了吧

false,   //如果发出了持久 Cookie(跨浏览器会话保存的 Cookie),则为 true;否则为 false--是否为持久 Cookie:尚未发现有何用,至少目前偶还不知,下面会有说明

"测试用户数据"//用户数据:可用 ((System.Web.Security.FormsIdentity)User.Identity).Ticket.UserData 获取

         );

string str = System.Web.Security.FormsAuthentication.Encrypt(tk);//加密身份验票

             

     //声明一个 Cookie,名称为 Web.config 中 <forms name=".APSX" … /> 的 name 属性,对应的值为身份验票加密后的字串

     System.Web.HttpCookie ck = new HttpCookie(System.Web.Security.FormsAuthentication.FormsCookieName,str);        

             

     //指定 Cookie 为 Web.config 中 <forms path="/" … /> path 属性,不指定则默认为“/”

     ck.Path=System.Web.Security.FormsAuthentication.FormsCookiePath;  

//此句非常重要,少了的话,就算此 Cookie 在身份验票中指定为持久性 Cookie ,也只是即时型的 Cookie 关闭浏览器后就失效;因此上面我说:我是真的还不知在身份验票中指定为持久性 Cookie 有何用。

     ck.Expires = System.DateTime.Now.AddYears(100);

Response.Cookies.Add(ck); //添加至客房端 


发布了40 篇原创文章 · 获赞 4 · 访问量 9万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章