aspx页面状态管理Cookie和ViewState

  1. Cookie

    1. 设置cookie

      protected void Button2_Click(object sender, EventArgs e)
              {
                  HttpCookie cookie = new HttpCookie("user");
                  cookie.Value = "这是cookie";
                  cookie["sex"] = "女";
                  cookie.Values.Add("age", "18");
                  cookie.Expires = DateTime.Now.AddHours(1);
                  Response.AppendCookie(cookie);//将Cookie追加到内部cookie
                  //Response.Cookies.Add(cookie);//跟上面一样
              }

      2获取Cookie

      protected void Button1_Click(object sender, EventArgs e)
              {
                  //获取客户端发送的Cookie
                  HttpCookie cookie1 = Request.Cookies["user"];
                  if (cookie1 == null)
                  {
                      Response.Write("木有发现cookie");
                  }
                  else
                  {
                      Response.Write("cooki值为:"+cookie1.Value+"<br/>");
                      Response.Write("sex值为:"+cookie1["sex"]+"<br/>");
                      Response.Write("age值为:"+cookie1["age"]+"<br/>");
                  }
              }

      3,删除cookie

      //将cookie有效期设置为过去某个时间,浏览器会检查自动删除
                  HttpCookie cookie = Request.Cookies["user"];
                  cookie.Expires = DateTime.Now.AddHours(-1);

        1. 效果图
    2. 跨域读取Cookie
      1. 不同域的Cookie无法共享,如果站点有子域(baiyun.com和sell,baiyun.com),可以设置cookie的Domain属性

        cookie.Domain="baiyun.com";
        cookie.Domain="sell.baiyun.com";

        这样cookie就能用于主域和子域了

  2. 网页查看源代码的时候有个_VIEWSTATE的隐藏字段就是:1.存在客户端,会减轻服务器压力2.本身限制,只能保存可以序列化的对象;3,过大会传输速度慢,增加服务器解析负担;4,可以用LosFormatter得到ViewState反序列化后的对象,安全性差;5,可以关闭以提高性能(EnableViewState="false")
时间: 2025-01-04 18:56:50

aspx页面状态管理Cookie和ViewState的相关文章

aspx页面状态管理(查询字符串Request与Application)

1,Request:可以方便的将信息从一个页面传递到另一个页面,通过url传递,不安全,数据量小,只能通过http-get提交的才可以 2,Application对象:()本质上是Hash表)所有访问此应用程序的客户都能看到Application对象的值,主要用于储存所有用户公共的信息,如果木有使用程序强制释放,则Application对象会存在于整个应用程序的生命周期哦 asp.net的应用程序池中保存数个(Application)应用程序实例,每一次请求都会从池中取出一个实例来处理请求,在请

状态管理cookie和session

是由php提供的,session开关要放在代码最前面,session是保存在服务器的一般保存20分钟,cookie是保存在客户端的随便给值. 状态管理cookie和session,布布扣,bubuko.com

SERVLETJSP学习(六)—— 状态管理-cookie

1. 状态管理-Cookie 1.1. 状态管理 1.1.1. 为什么需要状态管理 Web应用程序使用HTTP协议作为传输数据的标准协议,而HTTP协议是无状态协议,即一次请求对应一次响应,响应结束后连接即断开,同一个用户的不同请求对于服务器端来讲并不会认为这两个请求有什么关联性,并不会以此区分不同的客户端.但实际情况中还是需要服务器端能够区分不同的客户端以及记录与客户端相关的一些数据,所以状态管理能够做到不同客户端的身份识别. 1.1.2. 什么是状态管理 将客户端与服务器之间多次交互当做一个

[原创]java WEB学习笔记28: 会话与状态管理Cookie 机制

1.会话与状态管理 1)背景 ① HTTP协议是一种无状态的协议,WEB服务器本身不能识别出哪些请求是同一个浏览器发出的 ,浏览器的每一次请求都是完全孤立的: ② 作为 web 服务器,必须能够采用一种机制来唯一地标识一个用户,同时记录该用户的状态: ③ 问题:怎么才能实现网上商店中的购物车呢:某个用户从网站的登录页面登入后,再进入购物页面购物时,负责处理购物请求的服务器程序必须知道处理上一次请求的程序所得到的用户信息. 2)会话和会话状态 ① WEB应用中的会话:指一个客户端浏览器与WEB服务

状态管理cookie 案例

1状态管理:服务器为了追踪同一个客户端发出的请求,将多次交互看成一个整体看待 2:cookie的生存时间,默认情况下,cookie保存在浏览器内存中,只要不关闭浏览器,cookie就一直存在 如果希望关闭浏览器后,cookie仍然存在,可以设置过期时间 3:在写cookie是,为了让浏览器访问到同一应用的cookie,最好设置cookie的默认路径 c.setPath(/day07); 4.1 增加Cookie代码: //创建cookie Cookie c1 = new Cookie("unam

状态管理-Cookie

1.为什么需要状态管理 Web应用程序使用HTTP协议通信,而HTTP协议是“无状态”协议,即服务器一旦响应完客户的请求之后,就断开连接,而同一个客户的下一次请求将重新建立网络连接 服务器应用程序有时是需要判断是否为同一客户发出的请求,比如客户的多次选购商品.因此,有必要跟踪同一客户发出的一系列请求. 2.什么是状态管理 将客户端(浏览器)与服务器之间多次交互(一次请求,一次响应)当做一个整体来看待,并且将多次交互所涉及的数据即状态保存下来 状态指的是数据 管理指的是多次交互时对数据的修改 3.

JSP | 基础 | JSP状态管理 | Cookie &amp;&amp; Session

Cookie : 是web服务器保存在客户端的一系列文本信息. Cookie的作用: 1.对特定的对象的追踪 2. 3. JSP中创建Cookie以及使用 创建Cookie对象 写入Cookie对象 使用Cookie对象 Cookie在登录应用: 需求: 用户在勾选记住密码后, 1. 保存用户密码24小时,并在另外一个页面上显示通过cookie读取用户的用户名和密码, 2. 在返回登录页面上,自动填充用户名以及密码 注意: 1. 用户名可以为中文字符,需要解决中文字符转码问题 2. 原文地址:h

[Asp.Net]状态管理(Session、Application、Cache、Cookie 、Viewstate、隐藏域 、查询字符串)

Session:  1. 客户在服务器上第一次打开Asp.Net页面时,会话就开始了.当客户在20分钟之内没有访问服务器,会话结束,销毁session.(当然也可以在Web.config中设置缓存时间)可以在Global.aspx的Session_Start()事件处理程序中,可以初始化会话变量.在下面的实例中,名为mydata的会话状态被初始化为0: 运行结果: 2.Session是保存在服务器端的用户变量.我可以在一个页面中对Session进行值,然后在另一个页面里访问它. Session的

(11)Web程序保存状态的几种方式,Application,Session,Cookie,ViewState

WEb程序保存状态的方式有这样几种: 1.Application:保存在Application中的数据是全局有效的:Application里面存放的应该是访问多修      改较少并且是全局至少大部分功能会使用的数据,例如计数器或者数据库连接串等. Application.Lock();        ((int)Application["Count"])++;        Application.Unlock(); 2.Session:在Asp.Net内部,有一个StateAppl