Cookie相关的Http头
Set-Cookie Header
在程序中生成expire

Cookie相关的Http头

    有 两个Http头部和Cookie有关:Set-Cookie和Cookie。
    Set-Cookie由服务器发送,它包含在响应请求的头部中。它用于在客户端创建一个Cookie
    Cookie头由客户端发送,包含在HTTP请求的头部中。注意,只有cookie的domain和path与请求的URL匹配才会发送这个cookie。
Set-Cookie Header 
    Set-Cookie响应头的格式如下所示:
        Set-Cookie: <name>=<value>[; <name>=<value>]...
                    [; expires=<date>][; domain=<domain_name>]
                    [; path=<some_path>][; secure][; httponly]
    expires=<date>: 设置cookie的有效期,如果cookie超过date所表示的日期时,cookie将失效。
                    如果没有设置这个选项,那么cookie将在浏览器关闭时失效。
                    注意:date是格林威治时间(GMT),使用如下格式表示:
                        DAY, DD MMM YYYY HH:MM:SS GMT
                        DAY
                            The day of the week (Sun, Mon, Tue, Wed, Thu, Fri, Sat).
                        DD
                            The day in the month (such as 01 for the first day of the month).
                        MMM
                            The three-letter abbreviation for the month (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec).
                        YYYY
                            The year.
                        HH
                            The hour value in military time (22 would be 10:00 P.M., for example).
                        MM
                            The minute value.
                        SS
                            The second value.
    domain=<domain_name> : 
    path=<some_path>:
                    注:临时cookie(没有expires参数的cookie)不能带有domain选项。
                    当客户端发送一个http请求时,会将有效的cookie一起发送给服务器。
                    如果一个cookie的domain和path参数和URL匹配,那么这个cookie就是有效的。

一个URL中包含有domain和path,可以参考http://www.w3school.com.cn/html/html_url.asp

    secure   : 表示cookie只能被发送到http服务器。
    httponly : 表示cookie不能被客户端脚本获取到。

 在程序中生成expires 

    C的方式 
        time_t curTime = time(NULL);
        tm * gmTime = gmtime(&curTime);
        char strExperis[50];
        strftime(strTimeBuf, 100, " %a, %d %b %Y %X GMT;", gmTime);
    JavaScript的方式 
        var d = new Date();
        var expires = d.toGMTString();

Windows中的InternetSetCookie 

在Windows中我们可以使用InternetSetCookie来设置Cookie,假如说,A和B两个进程使用Cookie通信,那么会有如下几种情况:

> A写Global Cookie,B写Session Cookie,此时,A中无法获取Cookie

> A写Session Cookie,B写Session Cookie,此时,A与B中的Cookie互不影响

> A写Session Cookie,B写Global Cookie,此时A中的Cookie被Global Cookie覆盖,它们共享一份Global Cookie

注:这种情况的后果下,如果有任意一个进程再写Session Cookie,那么其他进程将获取不到Cookie

转载于:https://www.cnblogs.com/hdtianfu/archive/2013/05/30/3108295.html

HTTP Cookie相关推荐

  1. HTTP 协议入门 — (TCP/IP协议族、通信传输流、URI 与 URL 的区别、Cookie 状态管理、HTTP 支持的方法、状态码类别、HTTP 首部字段)

    TCP/IP协议族 在介绍 HTTP 协议之前,我们先对 TCP/IP 协议族有个大概的了解,TCP/IP 协议从上到下主要分为应用层.传输层.网络层和数据链路层,各层的主要功能如下表所示: 协议层 ...

  2. cookie 免密登录_python

    我们都知道 HTTP 是无状态的,用户每次打开 web 页面时,服务器都打开新的会话,而且服务器也不会自动维护客户的上下文信息,那么服务器是怎么识别用户的呢? 这就是本文今天要讲解的内容.当服务端需要 ...

  3. 你想了解的Cookie和Session就在这~

    目录 1.会话的概念 2.保存会话的两种技术 3.Cookie 4.Session(重点) 1.会话的概念 我们知道session的意思就是会话,Cookie和Session 是两种会话技术,我们首先 ...

  4. Cookie和Session的区别与联系

    Cookie和Session Session 会话的理解 Session的作用 HTTP协议的无状态特点 Session的实现原理(重点) Session常用方法: Cookie 基本介绍 经典案例 ...

  5. java爬取验证码图片_JAVA HttpClient实现页面信息抓取(获取图片验证码并传入cookie实现信息获取)...

    JAVA HttpClient实现页面信息抓取(获取图片验证码并传入cookie实现信息获取) 发布时间:2018-05-18 16:41, 浏览次数:632 , 标签: JAVA HttpClien ...

  6. cookie用法之一,最简单cookie操作

    一.先引用封装好的JS<script src="https://img.huiyiguanjia.com/cdnfile/public/publicfunction.js"& ...

  7. redis缓存和cookie实现Session共享

    分布式项目中要实现单点登录(SSO - Single Sign On):对于同一个客户端(例如 Chrome 浏览器),只要登录了一个子站(例如 a.com),则所有子站(b.com.c.com)都认 ...

  8. 关于cookie与本地 存储的区别的问题。

    1. cookie在浏览器和服务器间来回传递.而sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存. 2. cookie数据还有路径(path)的概念,可以限 ...

  9. 不同级域名中的 Cookie 共享

    HTTP 响应头中 Set-Cookie 行未指定 domain 时则设置访问的域名 seliote.com 可以设置 seliote.com(也可以写成 .seliote.com 意思一样) 与 w ...

  10. 手动添加Cookie

    Controller设置Cookie第一种方式: 写:Response.SetCookie(new HttpCookie("mycookie"){ Value="1234 ...

最新文章

  1. [.net 面向对象编程基础] (13) 面向对象三大特性——多态
  2. linux卸载已安装的java_Linux 中如何卸载已安装的软件(转载)
  3. leetcode232. 用栈实现队列
  4. 对弈类游戏的人工智能(3)--博弈树优化
  5. 怎样找到native speaker的感觉
  6. 手机重装android系统,手机系统重装
  7. vue脚手架的自定义配置
  8. Android 圆形颜色拾取器代码,android 颜色拾取控件 ColorPickerDialog
  9. catia里画铰链_基于CATIA的汽车车门铰链设计
  10. 阿里巴巴的愿景,使命和价值观
  11. 原厂PL7203大电流3A充电IC
  12. 马蜂窝都斌出席广西自驾游大会:大数据将成自驾市场增长新引擎
  13. 流程管理体系实施策略
  14. java 判断用户名_java如何判断用户名和密码
  15. win10显示rpc服务器不可用,win10系统RPC服务器不可用如何处理?
  16. 【浏览器兼容性】如何隐藏微软的ie和edge浏览器密码输入框的小眼睛
  17. 0x03数据类型和变量
  18. 短信平台API接口demo示例-Node/SMS/Send
  19. java电商平台_Java开源生鲜电商平台
  20. 单片机 单片机sfr和sbit关键字

热门文章

  1. [WPF]ListView点击列头排序功能实现
  2. 阿里一年,聊聊我成长了什么,入职阿里的职业生涯感悟
  3. java电子商务系统源码 Spring MVC+mybatis+spring cloud+spring boot+spring security
  4. 《Drupal实战》——3.3 使用Views创建列表
  5. linux中的守护进程
  6. Java IO 之 InputStream源码(2)
  7. 线性表 - 数据结构和算法06
  8. mysql springboot 缓存_Spring Boot 整合 Redis 实现缓存操作
  9. Java—servlet简单使用
  10. leetcode29. 两数相除(位运算)