首页 技术 正文
技术 2022年11月13日
0 收藏 866 点赞 2,854 浏览 2328 个字

Session

Session 对象用于存储用户的信息。存储于 session 对象中的变量持有单一用户的信息,并且对于一个应用程序中的所有页面都是可用的。

   Session 对象

  当您操作某个应用程序时,您打开它,做些改变,然后将它关闭。这很像一次对话(Session)。计算机知道您是谁。它清楚您在何时打开和关闭应用程序。但是在因特网上有一个问题:由于 HTTP 地址无法存留状态,web 服务器并不知道您是谁以及您做了什么。

  ASP 通过为每位用户创建一个唯一的 cookie 的方式解决了这个问题。cookie 被传送至客户端,它含有可识别用户的信息。这种接口被称作 Session 对象。

  Session 对象用于存储关于用户的信息,或者为一个用户的 session 更改设置。存储于 session 对象中的变量存有单一用户的信息,并且对于应用程序中的所有页面都是可用的。存储于 session 对象中的信息通常是 name、id 以及参数。服务器会为每个新的用户创建一个新的 Session,并在 session 到期时撤销掉这个 Session 对象。

   Session 开始于:

  • 当某个新用户请求了一个 ASP 文件,并且 Global.asa 文件引用了 Session_OnStart 子程序时;
  • 当某个值存储在 Session 变量中时;
  • 当某个用户请求了一个 ASP 文件,并且 Global.asa 使用 <object> 标签通过 session 的 scope 来例示某个对象时;

 Session 何时结束?

假如用户没有在规定的时间内在应用程序中请求或者刷新页面,session 就会结束。默认值为 20 分钟。

如果您希望将超时的时间间隔设置得更长或更短,可以设置 Timeout 属性。

设置 5 分钟的超时时间间隔:<%Session.Timeout=5%>

要立即结束 session,可使用 Abandon 方法:<%Session.Abandon%>

 存储 session 变量   Session[“username”]=”Donald Duck”;

 取回 session 变量  Response.Write(Session[“username”]);

   移除 session 变量  Session.Contents.Remove("username");

                Session["UserName"] = u.UserName;//Session传值赋值                Session.Timeout=//Session传值5分钟后过期                Response.Redirect("Index.aspx");//Session传值跳转

存储Session变量

            if (Session["UserName"] != null)            {                string un = Session["UserName"].ToString();//Session全局传值                Users u = new UsersData().select(un);                if (u != null)                {                    Label1.Text = u.PName + ",欢迎回来!";                }                else                {                    Response.Redirect("Login.aspx");                }            }            else            {                Response.Redirect("Login.aspx");            }

取回Session变量

        Session.Contents.Remove("UserName");

移除Session变量

Cookie

cookie 常用来对用户进行识别。cookie 是一种服务器留在用户电脑中的小文件。每当同一台电脑通过浏览器请求页面时,这台电脑也会发送 cookie。通过 ASP,您能够创建并取回 cookie 的值。

  会话Cookie(临时)清除方法:

    1、浏览器一关,此次访问一中断

    2、没有任何新的提交,20分钟过期

    3、手动清除浏览器Cookie

   持久Cookie清除方法: 

    1、代码设置过期

    2、手动清除浏览器Cookie

创建 cookie

Response.Cookies[“username”].Value = s;

取回 cookie 的值

string s = Request.Cookies[“username”].Value;

设置cookie的过期时间

Response.Cookies[“username”].Expires =DateTime.Now.AddDays(3);

设置cookie失效

Response.Cookies[“username”].Expires = DateTime.Now.AddDays(-10);


                Response.Cookies["UserName"].Value = u.UserName;//Cookie传值跳转                Response.Cookies[);//设置Cookie过期时间,不设置默认临时,关闭后或20分钟无操作失效                Response.Redirect("Index.aspx");//Cookie传值跳转

创建 cookie

            if (Request.Cookies["UserName"] != null)            {                string un = Request.Cookies["UserName"].Value;//Session全局传值                Users u = new UsersData().select(un);                if (u != null)                {                    Label1.Text = u.PName + ",欢迎回来!";                }                else                {                    Response.Redirect("Login.aspx");                }            }            else            {                Response.Redirect("Login.aspx");            }

取回 cookie 的值

        Response.Cookies[);

设置cookie失效

PS:跳转后地址栏不变  Server.Transfer("Default2.aspx);

    					
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,497
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,910
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,744
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,498
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,137
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,301