protected void Page_Load(object sender, EventArgs e)
{
//声明一个HttpCookie的引用
HttpCookie cookie = null;
//统计访问的次数
int count = 0;
//判断是页面加传
if (!IsPostBack)
{
UserInfo userInfo = Session["userInfo"] as UserInfo;
if (userInfo == null)
Response.Redirect("Login.aspx");
else if (userInfo.UserName != "恰嬉猫" ||
userInfo.PassWord != "123456")
Response.Redirect("Login.aspx");
else
{
//从客户端读取名为"Login"的cookie
cookie = Request.Cookies["Login"];
//如果不存在的话,也就是第一次写这个cookie,即首次登录
if (cookie == null)
{
//如果客户端没有这个cookie,实例化名为Login的cookie
cookie = new HttpCookie("Login");
//访问次数加加
count++;
cookie.Values["loginName"] = userInfo.UserName;
cookie.Values["dateTime"] = DateTime.Now.ToString();
cookie.Values["count"] = count.ToString();
cookie.Expires = DateTime.Now.AddDays(30);
//写cookie到客户端
Response.Cookies.Add(cookie);
}
else //当客户端有当前查找的cookie时
{
//读取访问次数
count =int.Parse(cookie.Values["count"].ToString());
//次数加加
count++;
cookie.Values["count"] = count.ToString();
//读取登录名
cookie.Values["loginName"] = userInfo.UserName;
//读取登录时间
cookie.Values["dateTime"] = DateTime.Now.ToString();
//Cookie 的有效时间:一个月
cookie.Expires = DateTime.Now.AddDays(30);
//更新cookie集合中现有的cookie值
Response.Cookies.Set(cookie);
}
Response.Write(userInfo.UserName + "欢迎您!");
}
}
}
---------- 用法 ----------
protected void Page_Load(object sender, EventArgs e)
{
HttpCookie cookie = Request.Cookies["Login"];
if (cookie == null)
{
Response.Write("<br>没有登录信息!");
}
else
{
Response.Write("<br>用户名:" + cookie["loginName"].ToString());
Response.Write("<br><br>上次访问时间:" + cookie["dateTime"].ToString());
Response.Write("<br><br>访问次数:" + cookie["count"].ToString());
}
}
Cookie对应多个值的用法、访问次数
最新推荐文章于 2019-04-18 14:36:19 发布