Session对象的应用

来源:互联网 发布:社会学常用数据库 编辑:程序博客网 时间:2024/06/12 23:05

Session应用

可以使用于安全性相比之下较高的场合,比如后台登录。
在管理员登录时,如果登录成功,则需要给管理员创建一个Session对象。
在后台登录中,管理员拥有一定的操作时间,如果在这段时间不进行任何操作,为了保证安全,后台将自动注销,如果管理员需要再次进行操作,则需要再次登录。

WebForm1.aspx代码

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head id="Head1" runat="server">    <title>Session使用实例</title></head><body>    <form id="form1" runat="server">    <div>        <asp:Button ID="Button1" runat="server" Text="登录" onclick="Button1_Click" />        <asp:Button ID="Button2" runat="server" Text="注销" onclick="Button2_Click" Visible=false />        <br />        <asp:Label ID="Label1" runat="server" Text=""></asp:Label>    </div>    </form></body></html>

WebForm1.aspx.cs代码

using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;namespace WebApplication1{    public partial class WebForm1 : System.Web.UI.Page    {        protected void Page_Load(object sender, EventArgs e)        {            if (Session["admin"] != null)//如果Session[“admin”]不为空            {                if (String.IsNullOrEmpty(Session["admin"].ToString()))//则判断是否为空字符串                {                    Button1.Visible = true;//显式登录控件                    Button2.Visible = false;//隐藏注销控件                    //Response.Redirect("admin_login.aspx");//跳转到登录页面                }                else                {                    Button1.Visible = false;//隐藏登录控件                    Label1.Text = "admin用户已登录";                    Button2.Visible = true;//显式注销控件                }            }        }        protected void Button1_Click(object sender, EventArgs e)        {            Session["admin"] = "admin";//新增Session对象            Response.Redirect("Session.aspx");//页面跳转        }        protected void Button2_Click(object sender, EventArgs e)        {            Session.Clear();//删除所有Session对象            Response.Redirect("Session.aspx");        }    }}

其中,Page_Load方法,判断是否已经存在Session对象。
如果存在,说明当前用户的权限是正常的,如果不存在Session对象,说明当前用户的权限不正确,或者是非法用户正在访问页面,可以直接跳转到登录页面,提示用户进行登录。

运行结果

这里写图片描述

登录之后

这里写图片描述

0 0
原创粉丝点击