zoukankan      html  css  js  c++  java
  • Cookie的存储读取删除修改 (cookie.Expires读取永远是零时间)

    1. Domain 和 Path 属性 是读不到的,读Domain属性永远是””,读Path属性永远是 ”/” 。本来这些属性的用途很有限。如果您的页面与 Cookie 不在相同的域,您根本就不会在页面的位置接收到该 Cookie。

    2. 也无法读取Cookie 的过期日期和时间。事实上,当浏览器向服务器发送 Cookie 信息时,浏览器并未将过期信息包括在内。您可以读取 Expires 属性,但总是返回为零的日期/时间值。Expires 属性的主要作用是帮助浏览器执行有关 Cookie 保存的日常管理。从服务器的角度来看,Cookie 要么存在要么不存在,所以对服务器而言,有效期并不是有用的信息。
    所以,浏览器在发送 Cookie 时并不提供此信息。如果您需要 Cookie 的过期日期,就必须重新设置。

    3.Domain 设置的时候 Request.Url.Authority;有可能导致cookie不能正常读取;(我是本地测试有时无法正常读取,因为Request.Url.Authority取值为 localhost:1262 )可以改成这样“http://”+Request.Url.Authority cookie就可以正常读取。{这个还要测试}

     写入cookie

    public void SetCookie()
            {
                HttpCookie cookie = new HttpCookie("man");
                cookie.Values.Add("name", "liming");
                cookie.Values.Add("age", "20");
                cookie.Expires = DateTime.Now.AddDays(1);
                cookie.Domain = Request.Url.Authority;
                Response.AppendCookie(cookie);
            }
    

      

    读取cookie

    HttpCookie cookie = Request.Cookies["man"];
                if (cookie != null)
                {
                    string name = cookie.Values["name"];
                }
    

      

    删除cookie

    HttpCookie cookie = Request.Cookies["person"];
                cookie.Expires = DateTime.Now.AddDays(-1);
                Response.AppendCookie(cookie);
    

      

  • 相关阅读:
    python 并发编程 多线程 event
    python 并发编程 多线程 定时器
    python 并发编程 多线程 信号量
    linux top 查看CPU命令
    python 并发编程 多线程 GIL与多线程
    python 并发编程 多线程 死锁现象与递归锁
    python 并发编程 多线程 GIL与Lock
    python GIL全局解释器锁与互斥锁 目录
    python 并发编程 多线程 GIL全局解释器锁基本概念
    执行python程序 出现三部曲
  • 原文地址:https://www.cnblogs.com/wzihan/p/14835499.html
Copyright © 2011-2022 走看看