zoukankan      html  css  js  c++  java
  • session、cookie

    session:全局变量组

    存放位置:存放在服务器上

     用法:相当于一个变量的使用方法,存在于服务器内存上,抓取速度快

    主界面:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Button1.Click += Button1_Click;
        }
    
        void Button1_Click(object sender, EventArgs e)
        {
            string s = TextBox1.Text;
            Session["a"] = s;
        }
    }

    副界面:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    public partial class Default2 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if(Session["a"]!=null)
            Label1.Text = Session["a"].ToString();
        }
    }

    作用:只要里面有内容,那么这个网站中所有的C#端都能访问到这个变量

    优点:安全,速度快,全局访问无限制

    缺点:消耗服务器内存资源

    弊端:session占用服务器资源,每一个访问对象都会创建session,如果访问对象过多,会占用过多服务器资源,造成服务器崩溃。

    Session生命周期:20分钟

    注意:1、不要存大量数据在Session里

       2、临时Session取完无用后记得 = null清空它,释放内存资源

    cookie-全局变量组

    存放位置:客户端电脑硬盘上

    作用:保存数据信息,只能保存字符串,全局访问

    用法:

    赋值:用response

         string s = TextBox1.Text;
            Response.Cookies["b"].Value = s;

    取值:用request

     Label1.Text = Request.Cookies["b"].Value;

    定义使用期限:response

     Response.Cookies["username"].Expires = DateTime.Now.AddDays(3);//三天期限

    跳转页面地址栏不转变的方法:server.transfer

    Server.Transfer("Default2.aspx?id=1111111111111111");

    用法简例:
    主界面:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Button1.Click += Button1_Click;
        }
    
        void Button1_Click(object sender, EventArgs e)
        {
            string s = TextBox1.Text;
            //Session["aa"] = s;
            if (s == "zhangke" && TextBox2.Text == "1234")
            {
                Response.Cookies["username"].Value = s;
    
                if (CheckBox1.Checked)
                {
                    Response.Cookies["username"].Expires = DateTime.Now.AddDays(3);//三天期限
                }
    
    
                //Response.Redirect("Default2.aspx");
                Server.Transfer("Default2.aspx?id=1111111111111111");
            }
            else
                Response.Write("用户名密码错误!");
    
        }
    }

    副界面:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    public partial class Default2 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.Cookies["username"] != null)
                Label1.Text = Request.Cookies["username"].Value;
            else
                Response.Redirect("Default.aspx");
    
            Label1.Text += "," + Request["id"];
    
    
            Button1.Click += Button1_Click;
    
        }
    
        void Button1_Click(object sender, EventArgs e)
        {
            Response.Cookies["username"].Expires = DateTime.Now.AddDays(-10);
            Response.Redirect("Default.aspx");
        }
    }

    会话Cookie消失的办法: 

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

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

    3、手动清楚浏览器Cookie

    持久Cookie消失的办法:

    1、代码设置过期

    2、手动清楚浏览器Cookie

  • 相关阅读:
    技巧使用
    一些常用的安装包可选安装组件
    php ob_flush与flush的作用
    HTML5 localStorage本地存储
    php clearstatcache
    iconv
    Mysql数字类型转换函数
    POJ
    POJ
    POJ
  • 原文地址:https://www.cnblogs.com/wy1992/p/6245120.html
Copyright © 2011-2022 走看看