cookie的获取和设置

来源:互联网 发布:抠图软件app 编辑:程序博客网 时间:2024/05/22 01:54

http无状态的根本原因:客户端通过套接字与服务端套接字连接上,发送请求,服务端响应向客户端发会响应报文之后,
因为连接耗服务器资源,连接立即断开,在处理完页面请求之后销毁页面对象。
服务端向客户端保存状态的三种方式:隐藏域,cookie,QueryString
刷新相当于重复上一次的操作,执行get请求,不会提交
使用ViewState保存数据时,页面的from必须是runat=“server”

 


cookie不兼容浏览器
cookie有两种存储方式,一种保存在浏览器的内存中,另一种是保存在客户端的硬盘中
aspx中cookie的设置(浏览器中存储cookie)
当设置失效时间时,将会把cookie写到客户端的硬盘中,
当不设置失效时间时,将会把cookie保存到客户端浏览器的内存中。
if (Page.IsPostBack)
        {
            string name = Request.Form["txtName"];
            string pwd = Request.Form["txtPwd"];
            if (name == "roger" && pwd == "123456")
            {
                HttpCookie cookie = new HttpCookie("name", name);
  cookie.expires=DateTime.Now.AddDays(2);    //设置两天后失效  服务器并不会把失效时间发送到服务器
                Response.Cookies.Add(cookie);
                Response.Redirect("GetCookie.aspx");

            }
            else
            {
                Response.Write("请填写正确的用户名和密码!");
            }
        }

aspx中cookie的获取:

        HttpCookie cookie = Request.Cookies["name"];
        if (cookie != null)
        {
            Response.Write("欢迎您登录!    " + cookie.Value);
        }


一般处理程序要想调用session必须实现接口IRequireSessionState,此接口在命名空间system.web.sessionState命名空间下。

原创粉丝点击