相信大家在平时浏览网站的时候,都见过诸如七天免登录或者记住密码的功能。如果用户勾选了该功能,则可以帮助用户自动登录,这样显得网站更加友好。如果没有勾选,那么用户下一次登录网站仍需要填写用户名和密码。
所以今天我们来简单了解下有关cookie免登录的知识。
废话不多说,我们直接上最关键的代码:
if (this.IsSavePwd.Checked)//判断是否勾选复选框
{
//存cookie
//用户名
HttpCookie cookiename = new HttpCookie("name",admin.adminName);
//设置过期时间
cookiename.Expires = DateTime.Now.AddDays(7);
//添加进cookies对象
Response.Cookies.Add(cookiename);
//密码
HttpCookie cookiepwd = new HttpCookie("pwd", admin.adminPwd);
cookiepwd.Expires = DateTime.Now.AddDays(7);
Response.Cookies.Add(cookiepwd);
}
else
{
//删除cookie(先判断cookie对象是否存在)
var cookiename = Request.Cookies["name"];
var cookiepwd = Request.Cookies["pwd"];
if (cookiename != null && cookiepwd != null)
{
cookiename.Expires = DateTime.Now.AddDays(-1);
Response.Cookies.Add(cookiename);
cookiepwd.Expires = DateTime.Now.AddDays(-1);
Response.Cookies.Add(cookiepwd);
}
}
接下来,在窗体首次加载的时候,我们仍需判断cookie是否存在。如果存在,我们直接把保存的值赋值到文本框里面就行了。也就是以下代码的意思:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
var cookiename = Request.Cookies["name"];
var cookiepwd = Request.Cookies["pwd"];
if (cookiename != null && cookiepwd != null)
{
this.txt_AdminName.Text = cookiename.Value;
this.txt_AdminPwd.Attributes["value"] = cookiepwd.Value;
this.IsSavePwd.Checked = true;
}
}
}
怎么样,是不是觉得很简单。虽然简单,但我觉得以后应该还会经常用到,所以特意写一篇博客记录下来。哈哈哈,谢谢您的阅读。