zoukankan      html  css  js  c++  java
  • 【2017-05-21】WebForm内置对象:Session、Cookie,登录和状态保持

     

    1、Request -获取请求对象

    string s =Request["key"];

     

    2、Response  -  响应请求对象

    Response.Redirect("url");     服务端重定向,在当前页面跳转。

    Response.Write("string");     将此字符串输出到页面的最顶端,里面可以放Js。

     

    3、Session
    存贮在服务端,占用服务器内存
    很好用,速度很快
    不要滥用,容易溢出

    生命周期:20分钟,每一次新的请求都会刷新这个时间

    浏览器一旦关闭,那么会断开此条Session的连接

    Session里面能存储Object类型

    (1)、传值:

    string s=TextBox1.Text;

    Session["aaa"]=s;

    Response.Redirect("url");

     

    (2)、取值: 

    Label1.Text=  Session["aaa"].Tostring();

     

    (3)、如果报错:未将对象引用设置到对象的实例。

    存贮在服务端,占用服务器内存 。浏览器一旦关闭,那么会断开此条Session的连接 

    处理办法:在取值时进行判断

    if(Session["aaa"]!=null)

    {

    Label1.Text=  Session["aaa"].Tostring();

    }

     

    (4)、如果传一个对象的话:

    赋值:Users u= new Users();

             u.UserName="lisi";

             u.PassWord="123";

             Session["user"]=u;

             Response.Redirect("url");

    取值:Users uu=Session["user"] as Users;

            Label1.Text= uu.UserName+uu.PassWord;

     

    (5)、在Session取值结束以后可以直接把Session释放。

    Session["aaa"]=null;

     

     


    4、Cookie   传值只能穿string类型。

    传值:string s =TextBox1.Text;

            Response.Cookies["aa"].Value=s;

            Response.Cookies["aa"].Expires=DateTime.Now.AddDays(3);         设置Cookies3天后到期。

            Response.Redirect("url");

    取值:string ss=Request.Cookies["aa"].Value;

            Label1.Text=ss;

    如果报错:未将对象引用设置到对象的实例。

    在取值时进行判断

    if(Request.Cookies["aa"]!=null)

    {

         string ss=Request.Cookies["aa"].Value;

         Label1.Text=ss;

    }

     

    Cookies与Session基本一致,
    不一样的地方:Cookies是存储在客户端的,并且只能传递string类型。

     

    Session很安全,但是消耗服务器内存
    Cookies,不消耗服务器内存,存在客户端上,但是有可能被访问

    赋值:
    Response.Cookies["aa"].Value = s;

    取值:
    string ss = Request.Cookies["aa"].Value;

     

     

    5、登录和状态保持。

    在登录界面登录按钮的点击事件中:

    在主界面进行取值:

    主界面的退出登录按钮:

     

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    非网管交换机和网管交换机的区别
    百兆工业交换机与千兆工业交换机如何计算码率?
    光纤收发器的测试内容介绍
    使用expect在script中切换到root用户(精华)
    彻底解决ssh.invoke_shell() 返回的中文问题
    Python3之paramiko模块
    linux expect详解
    Apache HTTP Server 虚拟主机配置
    Apache 配置详解
    apache 基本配置
  • 原文地址:https://www.cnblogs.com/qq609113043/p/6886906.html
Copyright © 2011-2022 走看看