之前的博客,整理了下Session的存储方式和原理http://www.cnblogs.com/chinaagan/p/3200456.html

本篇再次整理下Cookies的使用和原理。

参考博客http://www.cnblogs.com/StudyLife/archive/2012/02/27/2369659.html

HttpCookie:定义Cookie的类。

Request:获取客户端信息。不只获取参数,如Request.QueryString,Request.Form;也能获取客户端其他信息,如有Request.Cookies等。

Response:客户端信息进行管理。有Response.Write,页面信息输出;Response.Cookies,管理cookies等。

写Cookie的代码

HttpCookie cookie = new HttpCookie("用户定义的Cookie名称");
cookie["姓名"] = "chinaagan";
cookie["性别"] = "男";
cookie.Expires = System.DateTime.Now.AddDays(30);
Response.Cookies.Add(cookie);
  • HttpCookie是实例化类型
  • Cookie的名称,“用户定义的Cookie名称”
  • Expires是Cookie的有效时间
  • Response用于管理Cookies,把Cookie加到客户端中
  • 另外在这里可以设置Cookies的配置信息,过期时间,安全验证等

读取Cookie值

HttpCookie Cookie4 = Request.Cookies["用户定义的Cookie名称"];
if (Cookie4 == null)
this.txt2.Text = "null";
else
this.txt2.Text = CommonFunc.ConvertObjectToString(Cookie4["姓名"]);
  • 读取Cookie,需要用到Request方法获取客户端信息
  • Request.Cookies["用户定义的Cookie名称"],获取Cookies的名称
  • Cookie4["姓名"],获取Cookies下的key值

用Fiddle抓取的Cookie值

HttpCookie Cookie3 = new HttpCookie("用户定义的Cookie名称");
Cookie3.Expires = DateTime.Now.AddDays(-);
Response.Cookies.Add(Cookie3);
  • HttpCookie("用户定义的Cookie名称"),定义Cookie
  • Cookie3.Expires = DateTime.Now.AddDays(-5),设置Cookie的有效时间为过期
  • Response.Cookies管理客户端的Cookie

用Fiddle抓取的,已经没有"用户定义的Cookie名称"的Cookie值

删除Cookies

权限的原因,Cookies删除是不能操作的。可以设置Cookie的有效时间,有效时间小于今天,这个Cookie就会失效。

Cookies设置,获取,删除的更多相关文章

  1. 如何设置,获取,删除cookie?

    cookie : 存储数据,当用户访问了某个网站(网页)的时候,我们就可以通过cookie来像访问者电脑上存储数据 1.不同的浏览器存放的cookie位置不一样,也是不能通用的 2.cookie的存储 ...

  2. cookies的获取,删除,设置

    cookies,sessionStorage 和 localStorage 的区别? 1.cookie在浏览器和服务器间来回传递. sessionStorage和localStorage不会: 2.s ...

  3. Django 设置cookies与获取cookies.

    在Django里面,使用Cookie和Session看起来好像是一样的,使用的方式都是request.COOKIES[XXX]和request.session[XXX],其中XXX是您想要取得的东西的 ...

  4. jQuery -> 获取/设置/删除DOM元素的属性

    jQuery的属性操作很easy,以下以一个a元素来说明属性的获取/设置/删除操作 <body> <a>jquery.com</a> </body> 加 ...

  5. 通过adb 设置、删除、获取 系统配置值。

    通过adb 设置.删除.获取 系统配置值. Key定义在:frameworks\base\core\java\android\provider\Settings.java adb shell sett ...

  6. DOM属性获取、设置、删除

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. Asp.Net中Response.Cookies.Remove 无法删除COOKIE的问题解决方法

    登陆功能经常需要使用Cookie来存储登陆信息,可是在开发过程中,经常发现cookie无法删除的问题.删除的代码无非就是找到Cookie并删除掉. 但是会发现 Response.Cookies.Rem ...

  8. C# 设置、删除、读取Word文档背景——基于Spire.Cloud.Word

    Spire.Cloud.Word.Sdk提供了接口SetBackgroudColor().SetBackgroudImage().DeleteBackground().GetBackgroudColo ...

  9. ReactNative 当前url和cookies的获取

    前面大概介绍了react-native的运行helloword级别的入门,所以之后简单的东西就不写了,毕竟官网上都能够找到. reactnative官网:https://facebook.github ...

  10. style设置/获取样式的问题 和 offsetWidth/offsetHeight的问题

    style设置/获取样式的问题:1.js通过style方法    --加样式:加的是行间样式 oDiv.style.width="20"+'px';    --取样式:取得是行间样 ...

随机推荐

  1. java面向对象思想2

    1.主函数是一类特殊的函数,作为程序入口,可被虚拟机调用.主函数格式是固定的.public:函数访问权限最大.static:代表函数随着类的加载已经存在.void:主函数没有具体返回值.main:不是 ...

  2. vitrual box安装centos时一直黑屏的解决办法

    趁着清明节没事,昨天看了mysql性能优化后,想装个linux系统学习下,linux一直是我的短板...之前是在vmware上安装ubuntu,买了新电脑后,听过virtual box相比vmware ...

  3. centos下修改docker连接docker_host默认方式为tls方式

    1.安装docker,请参考官网文档 centos下安装docker 2.安装完成应该可以使用docker的各种命令连接docker host.docker host运行在本机上,但与localhos ...

  4. 五、Linux 远程登录

    Linux 远程登录 Linux一般作为服务器使用,而服务器一般放在机房,你不可能在机房操作你的Linux服务器. 这时我们就需要远程登录到Linux服务器来管理维护系统. Linux系统中是通过ss ...

  5. ATM-conf-settings

    import os BASE_DIR = os.path.dirname(os.path.dirname(__file__))BASE_DB = os.path.join(BASE_DIR, 'db' ...

  6. tcl之基本语法—3

  7. du 与df 统计系统磁盘不一致原因与解决方法

    事件起因: 同事发现云主机磁盘系统盘满了,准备清理系统盘,便利用du 命令统计了根目录下各文件夹的大小,发现统计的各文件夹的大小总和 加起来比 df 命令查看到的系统盘所使用空间 要小很多.这里记录下 ...

  8. 裸奔着造房子——对政府禁止采购Win8系统的一些看法

    前段时间有消息称政府招标的项目将禁止使用Win8系统,原因是Win8系统的安全架构将有利于暴露敏感信息给微软,而微软的老子是美利坚,老子想要知道什么,儿子当然不敢不从.因此Win8也被打入冷宫,微软多 ...

  9. 4444: [Scoi2015]国旗计划

    4444: [Scoi2015]国旗计划 Time Limit: 20 Sec  Memory Limit: 256 MBSubmit: 485  Solved: 232 Description A国 ...

  10. Eclipse主题更换方法

    1.打开Eclipse的Help->Eclipse Marketplace 2.在Find里搜索Eclipse Color Theme,点击Install按钮 3.打开Window->Pr ...