日期:2014-05-19  浏览次数:20453 次

|G|需要一登录代码,不用Session!因为我真的不能保证Session不丢失!
象csdn好象就不是基于Session!不用Session我不知道怎么处理!大侠们帮忙!

------解决方案--------------------
可以用cookies或用数据库保存
------解决方案--------------------
cookies
------解决方案--------------------
放数据库里 或者用application里
------解决方案--------------------
cookie了
------解决方案--------------------
模仿|M|?又一个百分大王诞生啦~~~~
------解决方案--------------------
就是用cookies了,学学这个吧
------解决方案--------------------
用cookie...找找例子,网上一大把。
------解决方案--------------------
最好还是数据库或者application
------解决方案--------------------
csdn用的似乎也是cookie,你登录之后再清空cookie,然后再操作csdn,会要你重新登陆。
用session没有必要,session过期问题始终是难以从根本上解决的一个问题,还是cookie来得方便,保存在客户端也不会增加服务器开销
------解决方案--------------------
使用cookie 比如

HttpCookie myCookie = new HttpCookie( "myTestCookies ");

// Set the cookie value.
myCookie.Values.Add( "UserID ", "A6CA9DD9-F116-4071-BBFE-32C45DF13B5F ");

// Set the cookie expiration date.
myCookie.Expires = DateTime.Now.AddHours(1);
// Set the cookie Domain
myCookie.Domain = "csdn.net "; //这里根据你的网站域名或IP

// Add the cookie.
Response.Cookies.Add(myCookie);
------解决方案--------------------
MARK
------解决方案--------------------
session结合cookies比较好
------解决方案--------------------
我觉得可以每次进入网页都验证相应的session是否为空,若为空,就读相应的cookie,若cookie存在,就把cookie的值读入session中,若相应的cookie也是空,就要其登录
这样,每次session失效后就把cookie中的值重新读入session中,若cookie也过期了,那就重新登录吧……
------解决方案--------------------
使用cookie 比如

HttpCookie myCookie = new HttpCookie( "myTestCookies ");

// Set the cookie value.
myCookie.Values.Add( "UserID ", "A6CA9DD9-F116-4071-BBFE-32C45DF13B5F ");

// Set the cookie expiration date.
myCookie.Expires = DateTime.Now.AddHours(1);
// Set the cookie Domain
myCookie.Domain = "csdn.net "; //这里根据你的网站域名或IP

// Add the cookie.
Response.Cookies.Add(myCookie);

---------------------------------


几乎95%以上的网站用户登录使用进程内Cookie,你是不是想用户离开后一小时内登陆状态还不消失?对网吧用户、公共计算机,这种行为……
------解决方案--------------------
在form验证,登录时这么写:
if (Membership.ValidateUser(userName, psw)) //在这里验证用户

FormsAuthentication.RedirectFromLoginPage(userName, this.Login1.RememberMeSet);

}
else
this.Login1.FailureText = "Login failed. Please check your user name and password and try again. ";


//在别的页面取用户名这么写:
string userID = HttpContext.Current.User.Identity.Name;


------解决方案--------------------