ASP.NET中提供了Cookie对象来实现状态管理;
; function setCookie(name,value,daysToLive){
var cookie= name + "=" + encodeURIComponent(value);
if(typeof daysTolive === "number"){
cookie +="; max-age=" + (daysTolive*60*60*24);
document.cookie = cookie;
}
};
//前端处理cookie
function getcookie() {
var cookies = {};
var all = document.cookie;
if (all === "")
return cookies;
var list = all.split(";");
for (var i = 0; i < list.length; i++) {
var cookie = list[i];
var p = cookie.indexOf("=");
var name = cookie.substring(0, p);
var value = cookie.substring(p + 1);
cookies[name] = value;
}
return cookies;
}
//获取登入信息
function getLoginMsg() {
var user = {};
var msg = getcookie().Login;//获取登入cookie的值
if (!msg) { return false; }
else {
var list = msg.split("&");
for (var i = 0; i < list.length; i++) {
var cookie =list[i];
var p = cookie.indexOf("=");
var name = cookie.substring(0, p);
var value = cookie.substring(p + 1);
user[name] = value;
}
}
return user;
};
//后端向浏览器植入cookie;
HttpCookie LoginCookie = new HttpCookie("Login");//创建名称为Login 的HttpCookie对象LoginCookie;
//往HttpCookie写内容; 有三种方法
//1. LoginCookie.Values.Add("Name",name);LoginCookie.Values.Add("Pwd",pwd);
//2. LoginCookie.Value = "Name=" + name + "&" + "Pwd=" + pwd;
//3. LoginCookie["Name"] = name; LoginCookie["Pwd"] =pwd;
LoginCookie.Expires = System.DateTime.Now.AddYears(1);//设置时间
context.Response.Cookies.Add(LoginCookie);//添加HttpCookie对象
//后端获取cookie;
HttpRequest request = context.Request;
HttpCookie cookie = context.Request.Cookies["Login"];//获取名称为Login的cookie
string name = "", pwd = "";
//如果cookie存在
if (cookie!=null && cookie.HasKeys) {
name = cookie["Name"];
pwd = cookie["Pwd"];
if(name =="hk" && pwd == "123")
{
context.Response.Write("登入成功");return;
}
};