Session与Cookie在系统登录中的综合应用

更新时间:2024-03-30 作者:用户投稿原创标记本站原创 点赞:5865 浏览:18971

摘 要:该文采用Visual Studio2008为开发环境设计登录模块,其中首先对Session及Cookie的应用、Session及Cookie的特点及常用操作进行概述,然后以常见的系统登录模块为案例,先描绘其其程序流程图,然后对其实现方法和步骤进行详细的论述,并配有代码及图例.

关 键 词 :Sesson;Cookie;登录;VS2008;ASP.

中图分类号:TP393.08

cookie数据存放在客户的浏览器上,session数据放在怎么写作器上;cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,如果考虑到安全应当使用session;session会在一定时间内保存在怎么写作器上.当访问增多,会比较占用你怎么写作器的性能,如果考虑到减轻怎么写作器性能方面,应当使用COOKIE

1.Session与Cookie的特点

1.1 Cookie特点

将客户的信息存于客户端,存放时间可自由设定

优点:不增加怎么写作器负担

缺点:安全性差

1.2 Session特点

将客户信息存于怎么写作器端,关闭浏览器时就丢失

优点:安全性高

缺点:占用了怎么写作器的资源

2.Session的操作

2.1 存入:Session["变量名"]等于值;

2.2 取出:string 变量等于Session["变量名"].ToString();

3.Cookie的操作

3.1 临时Cookie:只在内存中,关闭浏览器就丢失

Response.Cookies["CookieUser"].Value 等于 UserName;

3.2 永久Cookie:只需设置过期时间就可以生成文件永久存入在客户端电脑中

Response.Cookies["变量名"].Value 等于 值;

Response.Cookies["变量名"].Expires 等于 DateTime.Now.AddYears(1);

3.3 取出Cookie

string 变量等于Request.Cookie["变量名"].Value;

4.程序流程图

5.实现步骤

5.1 进入VS2008,新建网站

5.2 建立如下登录页面:Login.aspx

5.3 建立主页:Main.aspx

5.4 在Login.asxp.cs代码文件中Page_Load()中读取Cookie

protected void Page_Load(object sender, EventArgs e)

{

string UserName 等于 "";

try

{

UserName 等于 Request.Cookies["UserCookie"].Value;

}

catch (Exception)

{

}

if (UserName !等于 "")

{

Session["UserSession"] 等于 UserName;

Response.Redirect("Main.aspx");

}

}

5.5 在Login.aspx的“登录按钮”事件中

判断用户名和是否正确,若正确且选中了“下次是否自动登录”选择按钮,则将用户名存入Cookie,不管是否选中“下次是否自动登录”,都将用户名存入Session中,然后跳转到Main.aspx页面.

protected void Button1_Click(object sender, EventArgs e)

{

string UserName 等于 this.TextBox1.Text;

string Password 等于 this.TextBox2.Text;

if (UserName 等于等于 "史小静" && Password 等于等于 "123")


{

if (this.CheckBox1.Checked)

{

Response.Cookies["CookieUser"].Value 等于 UserName;

Response.Cookies["CookieUser"].Expires 等于 DateTime.Now.AddYears(1);

}

Session["SessionUser"] 等于 UserName;

Response.Redirect("Main.aspx");

}

}

5.6 在Main.aspx页面中的Page_Load()方法,加入检查Session是否为空的代码

protected void Page_Load(object sender, EventArgs e)

{//通过判断Session是否为空可限制用户不登录直接进入

if (Session["UserSession"] 等于等于 null || Session["UserSession"].ToString() 等于等于 "")//Session的名字必须与前面存入时相同

{

Response.Write("");

}

}

5.7 主页退出:添加“退出”按钮

protected void Button1_Click(object sender, EventArgs e)

{

Session.Abandon();//清除Session

Response.Redirect("Login.aspx");

}

6.小结

Session与Cookie在web中应用广泛,具体选择可根据实际情况而定.

相关论文范文